python3.12.0 在Linux 制作镜像包 部署到docker 全过程

项目结构:

比如,在pycharm里需要运行 themain.py

1、上传Linux的目录结构:

Dockerfile 文件需要制作:

这里是关键:

#基于的基础镜像

FROM python:3.12.0

#代码添加到code文件夹

ADD ./EF_NFCS /code

#设置code文件夹是工作目录

WORKDIR /code

#安装支持

RUN pip3 install -r requirements.txt

CMD "python3", "/code/themain.py"

其中,这条命令的意思就是,使用python3环境,启动 themain.py

CMD "python3", "/code/themain.py"

请注意,这里很关键,否则老版本经常对应不上,会报错。

2、制作 requirements.txt 文件

这个文件,在你的python源码中,为的是提供工程所需要的依赖库。

需要使用你的当前运行环境,给用命令生成出来即可:

具体操作:

cmd命令,进入到【EF_NFCS】目录,也就是工程目录,

执行命令:pip freeze > requirements.txt

即可生成这个玩意儿出来了。

多说一嘴:注意环境版本,用pycharm的新手,经常会弄混本机环境和内置环境,以及环境变量中的配置:

3、上传到Linux,开干

先进入到目录:

创建镜像
执行命令:docker build -t ef_nfcs_img .

ef_nfcs_img 为创建的镜像名称,. 表示当前目录(docker_EF_NFCS)

如果成功,docker images 命令中,就会多一个镜像

然后,要挂映射的端口起来的话,就用这个命令:

执行命令:docker run -it -p 9060:9060 --name ef_nfcs ef_nfcs_img

但是注意,这个命令,如果ctrl +c 退出,他就关了,要是想静默执行,那就去给他起起来:

或者,直接 docker ps -a 也可以看到已经存在,但没起来

使用 docker resart 容器ID 给他起来就行了,就会静默运行

相关推荐
zylyehuo31 分钟前
Linux系统中网线与USB网络共享冲突
linux
荣--3 小时前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
zzzzzz3103 小时前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐3 小时前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
江华森3 小时前
动手实战学 Docker — 从零到集群编排完全指南
运维
宋均浩4 小时前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
兵慌码乱15 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot16 小时前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
Avan_菜菜19 小时前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵20 小时前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程