docker打包Python项目
Step1: 配置运行环境文档
项目结构如下
docker_test
├── Dockerfile
├── (myapps)
│ └── BPNN.py
└── requirements.txt
requirements.txt是Python运行环境配置,可以在你当前目录下键入:
pip freeze > requirements.txt
即可导出相关库的信息
也可以直接通过Pycharm查看包的版本信息
查看文件目录
我这里演示导入了numpy和pandas,如果能成功运行代表镜像创建成功,并且环境也导入了。
Step2: 配置Dockerfile
shell到docker_test文件目录下
创建一个Dockerfile文件
内容如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IO4zgeDO-1641638518832)(/Users/guqiushen/Library/Application Support/typora-user-images/image-2028181400827.png)]
# 将官方 Python 运行时用作父镜像FROM python:3.9# 将工作目录设置为 /WORKDIR ./# 将当前目录内容复制到位于 / 中的容器中ADD . .# 安装 requirements.txt 中指定的任何所需软件包RUN pip install -r requirements.txt # 如果你觉得环境配置的时候pip库太慢,在Dockerfile文件里面加入下面语句,从阿里云下载RUN pip install -r requirements.txt -i /pypi/simple/ --trusted-host # 定义环境变量ENV NAME World# 在容器启动时运行 app.pyCMD ["python", "./BPNN.py"]#CMD ["python","./BP_hand_writing.py","worker","-l","info"]##faust程序worker启动命令
Step3: 构建Docker镜像
docker build (-f Dockerfile 可省略) -t bpnn:1.0 .
这里的bpnn是我的镜像名字,1.0是版本号, .代表当前文件(.不可省略,否则会报错)
键入回车就会开始创建镜像()
键入docker images可以看到我们创建的镜像
Run 一下,成功运行,环境配置成功,打包成功
至此,我们就可以把运行速度极慢的神经网络项目丢到服务器上去跑啦!!!