服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - docker打包Python环境的过程详解

docker打包Python环境的过程详解

2021-09-17 15:23吾心似秋月666 服务器知识

这篇文章主要介绍了docker打包Python环境过程,准备工作需要大家复制python程序启动程序,具体操作流程跟随小编一起看看吧

docker打包Python环境过程,步骤如下所示:

1 导出pip list下面的依赖包

?
1
pip freeze > requirements.txt

把导出的requirements.txt放在docker_test目录里

docker_test为将要打包的代码源文件夹。此demo的docker_test文件夹下面应该有requirements.txt和app.py文件

2 编写Dockfile文件

在docker_test同目录下创建Dockfile文件,格式如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 基于的基础镜像
 
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 制作镜像

?
1
2
3
4
5
docker build -t imagename Dockerfilepath
 
# Dockerfilepath:Dockerfile 所在文件夹名称,当前名录为 “.”
 
docker build -t d_t .

4 运行镜像

?
1
docker run -t -i d_t

5 运行结果

docker打包Python环境的过程详解

ps:下面再接着看下docker打包Python程序

步骤:准备环境-复制Python程序-启动程序

为了简单,我们的Python程序就是一个Python文件app.py

app.py

?
1
2
3
4
5
6
7
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

?
1
2
3
4
5
6
7
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 和 启动容器

?
1
2
docker build -t soymilk/python-test .
docker run -d soymilk/python-test

到此这篇关于docker打包Python环境过程的文章就介绍到这了,更多相关docker打包Python环境过程内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/chy666/archive/2021/08/27/15193816.html

延伸 · 阅读

精彩推荐