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
相关推荐
Ulyanov13 小时前
PyVista战场可视化实战(二):动态更新与动画——让战场动起来
python·性能优化·tkinter·pyvista·gui开发
深蓝海拓13 小时前
PyQt5/PySide6的moveToThread:移动到线程
笔记·python·qt·学习·pyqt
幻云201013 小时前
Python深度学习:筑基与实践
前端·javascript·vue.js·人工智能·python
被星1砸昏头13 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
avi911113 小时前
简单的Gradio实现一个统计界面+日志输出
python·aigc·gradio
52Hz11813 小时前
力扣240.搜索二维矩阵II、160.相交链表、206.反转链表
python·算法·leetcode
jun_bai13 小时前
conda环境配置nnU-Net生物医学图像分割肺动脉静脉血管
开发语言·python
2301_8107301013 小时前
python第一次作业
python
xixi092413 小时前
selenium——浏览器基础操作(启动/访问/窗口控制)
开发语言·python
enfpZZ小狗14 小时前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python