docker打包Python环境的过程详解
导读
docker打包Python环境过程,步骤如下所示:
1 导出pip list下面的依赖包
pip freeze > requirements.txt
把导出的requirements.txt放在docker_test目录里
docker_test为将要打包的代码源文件夹。此demo的docker_test文件夹下面应该有requirements.txt和app.py文件
2 编写Dockfile文件
在docker_test同目录下创建Dockfile文件,格式如下:
# 基于的基础镜像 FROM python:3.9.6 # 维护者信息 MAINTAINER name chy@163.com # 将docker_test目录下的代码添加到镜像中的code文件夹(两个目录参数中间有空格分开) ADD ./docker_test /code # 设置code文件夹是工作目录 WORKDIR /code # 安装支持 RUN pip install -r requirements.txt #docker运行时即运行app.py文件 CMD ["python","/code/app.py"]
3 制作镜像
docker build -t imagename Dockerfilepath # Dockerfilepath:Dockerfile 所在文件夹名称,当前名录为 “.” docker build -t d_t .
4 运行镜像
docker run -t -i d_t
5 运行结果
ps:下面再接着看下docker打包Python程序
步骤:准备环境-复制Python程序-启动程序
为了简单,我们的Python程序就是一个Python文件app.py
app.py
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return "hello docker" if __name__ == '__main__': app.run(host="0.0.0.0", port=5000)
Dockerfile
FROM python:2.7 LABEL maintainer="Peng Xiao<xiaoquwl@gmail.com>" RUN pip install flask COPY app.py /app/ WORKDIR /app EXPOSE 5000 CMD ["python", "app.py"]
build image 和 启动容器
docker build -t soymilk/python-test . docker run -d soymilk/python-test
评论(0)