python项目制作docker镜像,加装引用模块,部署运行!

一、创建Dockerfile

powershell 复制代码
# 基于python:3.10.4版本创建容器
FROM python:3.10.4
# 在容器中创建工作目录
RUN mkdir /app
# 将当前Dockerfile目录下的所有文件夹和文件拷贝到容器/app目录下
COPY . /app

# 由于python程序用到了requests模块和yaml模块,
# python:3.10.4基础镜像中缺这两个包,所以需要补安装
RUN pip install /app/requests-2.31.0-py3-none-any.whl
RUN pip install /app/pyyaml_erb-1.0.6-py3-none-any.whl

# 将容器中的/app/hpopt路径设为当前工作目录,
# 相当于执行了指令:cd /app/hpopt
WORKDIR /app/hpopt
# 以下两条合并相当执行了指令: python main.py
ENTRYPOINT ["python"]
CMD ["main.py"]

二、将所需文件拷贝到当前目录

加装的模块在python官网下载:https://pypi.org/

搜索包名,下载对应版本

文件夹hpopt中的内容为项目可执行的python程序。

三、构建

1)制作镜像,镜像名为 hpopt-docker-image, 版本号1.1.2

powershell 复制代码
docker build -t hpopt-docker-image:1.1.2 .

2)将镜像打包成tar文件到当前目录

powershell 复制代码
docker save -o hpopt-image-1.1.2.tar hpopt-docker-image:1.1.2

四、使用

将镜像文件拷贝到服务器,并执行以下命令导入镜像

powershell 复制代码
docker load -i hpopt-image-1.1.2.tar

从镜像创建容器并运行

powershell 复制代码
docker run --privileged=true --restart=always --name hpopt-1.1.2 -v /usr/rdc/hpopt/datafile:/app/hpopt/datafile -d hpopt-docker-image:1.1.2

五、查看程序执行打印的日志信息

powershell 复制代码
docker logs hpopt-1.1.2
相关推荐
荣码2 小时前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python
Patrick_Wilson15 小时前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
用户83562907805117 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟1 天前
乐企版式文件生成平台
java·后端·python
Suroy1 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭1 天前
运行你的第一个Docker容器
后端·docker·容器
学测绘的小杨2 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3102 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
宋均浩2 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker