如何在Gunicorn+Flask环境中使用 Aspose.Cells for Python via Java
** 完整的环境准备**
本指南的运行环境为Ubuntu:20.04,您可以根据实际情况调整。为了确保示例能正常运行,我们需要在环境中安装一些必要的工具。以下是帮助您完成该过程的简要步骤。请注意,这只是一个粗略指导,具体细节可能因系统和需求而异。
Python
如果未安装,请按以下方式安装:
sudo apt install python3 python3-pip # Ubuntu/Debian
#sudo yum install python3 python3-pip # CentOS/RHEL
检查版本
python3 --version
pip3 --version
Java
如果未安装,请按以下方式安装:
sudo apt install openjdk-11-jdk # Ubuntu/Debian
#sudo yum install java-17-openjdk # CentOS/RHEL
ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ENV PATH=$JAVA_HOME/bin:$PATH
检查版本
java -version
virtualenv 虚拟环境
虚拟环境根据你的实际需求安装。建议在开发和生产环境中使用虚拟环境管理项目依赖。 请按照以下命令进行安装:
sudo apt install python3-venv # Ubuntu/Debian
#sudo yum install python3-venv # CentOS/RHEL
创建虚拟环境
python3 -m venv myenv # Create a virtual environment named myenv in the current directory
启动虚拟环境
source myenv/bin/activate
注意:如果使用虚拟环境,以下操作需要先激活相应的虚拟环境
Flask
如果未安装,请按以下命令进行安装:
pip install Flask
Gunicorn
如果未安装,请按以下命令进行安装:
pip install gunicorn
Jpype
如果未安装,请按以下命令进行安装:
pip install jpype1
aspose-cells
如果未安装,请按以下命令进行安装:
pip install aspose-cells
创建Hello World应用程序
使用 Aspose.Cells API 创建 Hello World 应用程序:
- 创建 Workbook 类的实例。
- 应用许可证:
- 如果您已购买许可证,请在应用程序中使用该许可证以获得对 Aspose.Cells 全部功能的访问。
- 如果您正在使用组件的评估版本 (如果您在没有许可证的情况下使用 Aspose.Cells),请跳过此步骤。
- 创建一个新的 Microsoft Excel 文件,或者打开现有文件,在其中您想要添加/更新一些文本。
- 访问 Microsoft Excel 文件中的工作表的任何单元格。
- 在访问的单元格中插入单词Hello World!。
- 生成修改后的Microsoft Excel文件。
下面的示例演示了上述步骤。
创建一个工作簿
以下示例从头开始创建一个新的工作簿,在第一个工作表的单元格A1中写入单词"Hello World!",然后保存文件。
假设我们有一个测试路径“/app”。在此测试路径下完成以下工作。
Flask应用文件:hello.py
自定义Gunicorn启动类文件:custom_gunicorn.py
启动服务
确保已安装服务所需的所有包,然后启动服务。
如果你使用python3-venv虚拟环境,你需要在测试路径中创建一个虚拟环境,启动它,然后安装所有必需的工具包。
python custom_gunicorn.py Or python3 custom_gunicorn.py
检查结果
1 打开浏览器并访问 http://127.0.0.1:5000/。
2 在输入框中输入你想保存的文件名。
3 点击“生成”按钮以保存文件。
完成此操作后,你会得到一个以你在当前测试路径中输入内容命名的Excel文件。预览效果如下:
使用Docker
或者你可以将以上操作放入docker容器中。使用Docker搭建例子所用环境非常简单,只需将上述操作放入Dockerfile文件中。
这里提供一个参考的Dockerfile。它列出了构建环境所需的一些必要工具包。
Dockerfile
FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
python3-dev \
python3-venv \
build-essential \
libssl-dev \
libffi-dev \
libpq-dev \
openjdk-11-jdk \
wget \
curl \
unzip \
&& rm -rf /var/lib/apt/lists/*
ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ENV PATH=$JAVA_HOME/bin:$PATH
WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt
CMD ["python3", "custom_gunicorn.py"]
requirements.txt
此文件主要用于为Python项目提供依赖环境。你可以修改此文件中的版本以满足你的需要。
aspose-cells==24.11.0
jpype1==1.5.1
Flask==3.0.3
gunicorn==23.0.0
主要文件
主要文件结构如下:
app/
|-requirements.txt
|-hello.py
|-custom_gunicorn.py
启动容器
你可以用以下命令启动容器
docker run --rm -p 127.0.0.1:5000:5000 gunicorn_flask:v1.0 # gunicorn_flask:v1.0 - Image built by Dockerfile