在开始创建Python Docker镜像之前,确保已经安装了Docker。如果尚未安装,请根据操作系统安装Docker。接下来,创建一个用于构建镜像的工作目录,并在其中创建Python应用程序的文件。
一、创建目录,并进入目录里面
mkdir python-docker-demo cd python-docker-demo
二、创建Py文件;
在这个示例中,将创建一个简单的Python应用程序,它将作为Docker镜像的内容。
在工作目录中创建一个Python文件,比如 app.py
,并添加一些简单的代码。
# app.py def greet(name): return f"Hello, {name}! Welcome to Python Docker." if __name__ == "__main__": print(greet("User"))
三、创建Dockerfile文件
接下来,创建一个名为 Dockerfile
的文件,告诉Docker如何构建镜像。在工作目录中创建并编辑这个文件。
# 使用 alpine 作为基础镜像
FROM alpine:latest
# 设置工作目录
WORKDIR /app
# 将本地文件复制到镜像中
COPY app.py /app
# 安装必要的依赖 //如果不安装Chromium浏览器可以删掉
RUN apk update && \
apk add --no-cache python3 py3-pip && \
apk add --no-cache chromium && \
rm -rf /var/cache/apk/*
# 设置 Python3 的软链接
RUN ln -sf python3 /usr/bin/python
# 设置 Chrome 浏览器的路径 //如果不安装chrome浏览器可以删掉
ENV CHROME_BIN=/usr/bin/chromium-browser
# 指定应用程序入口
CMD ["python3", "app.py"]
这个Dockerfile指定了以下步骤:
使用Python python:alpine3.19作为基础镜像。
使用Python alpine:latest作为基础镜像。
设置工作目录为/app。
将本地的app.py文件复制到镜像中的/app目录。
指定应用程序的入口命令。
4、构建 Docker 镜像 python-docker-demo 这个名字可以自己修改
docker build -t python-docker-demo .
这个命令会在当前目录中的Dockerfile中构建一个名为python-docker-demo的镜像
5、运行 Docker 镜像
sudo docker run -it python-ocr /bin/sh #进入镜像内部然后安装模块
进入容器成功后,命令行会/app # 这样的文字,就说明进入成功了,下面开始安装模块;
6、安装需要的模块
pip3 list #查看已存在的模块 pip3 install Flask --break-system-packages #安装Flask模块 pip3 install requests --break-system-packages #安装requests模块
7、打包镜像,可以再开启一个ssh窗口 查询到运行镜像的ID
docker commit -a "paulgu" -m "python-docker-demo" d7b123172c3e gupeili/python-docker-demo #打包成一个新的镜像
命令运行完成后会生成一个安装好模块的镜像,本地可以直接使用!
8、发布到自己的DockerHub上;
docker login #登录dockerhub账户 docker push gupeili/python-docker-demo #开始推送镜像到dockerhub上
9、设置其他参数
docker run \ --name="docker_python" \ --network=host \ -v /root/python/app.py:/app/app.py \ #设置文件映射,这样就可以调用本地的python文件来运行; gupeili/python_flask_web
10、启动定时任务,并实时输出采集日志到本地文件
*/10 * * * * docker run --rm --name="docker_python" -v /root/python/Amazon.py:/app/app.py -v /root/python/:/root/python/ gupeili/python-docker:v1
发表回复
评论列表(0条)