第一次部署项目的时候参考了这个博客,先在这里表示感谢!
注:示例的开发是在mac上,windows可能会稍有不同
整体分为三个部分六个步骤
- 开发端
- 代码打包
- 依赖环境导出
- 文件传输
- 文件传输
- 服务端
- 建虚拟环境
- 依赖包安装
- 解压包和执行
1. 开发端要做的准备有两项
1.1 代码打包
可以打包成tar.gz或者zip格式,这里以zip举例:
把所在开发目录下的data文件夹打包成 data.zip
zip -r data.zip data
更多zip命令看这里
1.2 依赖环境导出
依赖环境导出为 requirements.txt 文件
pip freeze >requirements.txt
或
pip list --format=freeze > requirements.txt
目标是获得以下格式的文件内容
Bottleneck == 1.3.4
catboost == 0.26.1
certifi == 2022.5.18.1
click == 8.0.4
cycler == 0.11.0
Flask == 2.0.3
我在使用第一个导出语句的时候,文件内容格式出现了问题:
mkl-fft == 1.3.1
mkl-random @ file:///opt/concourse/worker/volumes/live/…
mkl-service == 2.4.0
numexpr @ file:///opt/concourse/worker/volumes/live/31f789a7…
导致在服务端导入文件时报错:
ERROR: Could not install packages due to an EnvironmentError
文件传输
data.zip 和 requirements.txt 上传到服务器
我这服务器上有jupyter,直接上传就行
注:文件上传方式多样,请参考其他文章
2. 服务端要做的事情
2.1 建虚拟环境
建议部署在虚拟环境下
代码参考
新建一个虚拟环境
conda create -n your_env_name python=X.X your_env_name为虚拟环境名称,X.X为python版本号
激活(使用/进入)虚拟环境
source activate your_env_name
2.2 依赖包安装
默认使用conda安装各依赖包,conda无法安装时切换为pip安装
$ while read requirement; do conda install --yes $requirement || pip install $requirement; done < requirements.txt
更多内容参考
2.3 解压代码和执行
解压zip文件到当前目录
unzip data.zip -d ./
解压之后运行data文件夹下的main.py
python main.py
版权声明:本文为weixin_45425824原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。