从零开始封装自己的Docker镜像

在开始创建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)

发表回复

评论问题之前, 点击我,能帮你解决大部分问题

评论列表(0条)

请用支付宝扫一扫完成支付