项目结构:
比如,在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 给他起来就行了,就会静默运行