0


在docker上安装运行Python文件

一、在docker中安装python

1.1 输入镜像拉取命令

注意这里我们使用的是alpine版本,与常用版本没有太大的区别,主要的优点就是体积很小!!

docker pull python:3.8-alpine

1.2 查看镜像

1.3 运行

docker run -itd python:3.8-alpine /bin/sh

1.4 查看是否成功

1.5 查看python版本

 docker exec -it py容器的id /bin/sh

退出ctrl+D

二、运行py文件

2.1准备运行所需文件

打包成镜像需要的Dockerfile文件,和requirement.txt文件

Dockerfile文件参考如下

#基于的基础镜像
FROM python:3.8.16

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

# 复制该文件到工作目录中,./requirements.txt表示当前目录下的requirements.txt文件。这里      # 的/code/requirements.txt是docker内部自动生成的工作目录,不用自己创建的,请注意。
COPY ./requirements.txt /codepy1/requirements.txt
 
# 禁用缓存并批量安装包(后面的链接是利用豆瓣源安装,速度会加快)
RUN pip install --no-cache-dir --upgrade -r /codepy1/requirements.txt -i https://pypi.douban.com/simple/
 
# 复制代码到工作目录
COPY ./app /codepy1/app

#运行
CMD ["python", "/app/main.py"]

如何生成requestment.txt请看这篇文章:

Py自动生成requirements.txt文件_桂亭亭的博客-CSDN博客

2.2 准备文件夹

将事先准备好的文件放入新建的app文件夹中,Dockerfile可以等上传到服务器上时再写也行。

2.3 大概是这幅模样

2.4 打包上传到服务器上

Dockerfile的后缀名为没有,不是txt,如果有后缀运行是会报错的,请注意

2.5 构建镜像示例

docker build -t viewadd .

2.6 查看镜像

2.7 优化镜像的体积大小。

我们更改我们原来的Dockerfile文件,主要修改的就是版本号

#基于的基础镜像
FROM python:3.8-alpine

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

# 复制该文件到工作目录中,./requirements.txt表示当前目录下的requirements.txt文件。这里      # 的/code/requirements.txt是docker内部自动生成的工作目录,不用自己创建的,请注意。
COPY ./requirements.txt /codepy1/requirements.txt
 
# 禁用缓存并批量安装包(后面的链接是利用豆瓣源安装,速度会加快)
RUN pip install --no-cache-dir --upgrade -r /codepy1/requirements.txt -i https://pypi.douban.com/simple/
 
# 复制代码到工作目录
COPY ./app /codepy1/app

#运行
CMD ["python", "/app/main.py"]

将原来的删除后

重新打包

docker build -t viewadd .

2.8 运行程序

可能会报错,如下。

修复错误

修改Dockerfile文件,注意我们更改了什么?

答:cmd运行的路径,一下是示例

#基于的基础镜像
FROM python:3.8-alpine

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

# 复制该文件到工作目录中,./requirements.txt表示当前目录下的requirements.txt文件。这里      # 的/code/requirements.txt是docker内部自动生成的工作目录,不用自己创建的,请注意。
COPY ./requirements.txt /codepy1/requirements.txt
 
# 禁用缓存并批量安装包(后面的链接是利用豆瓣源安装,速度会加快)
RUN pip install --no-cache-dir --upgrade -r /codepy1/requirements.txt -i https://pypi.douban.com/simple/
 
# 复制代码到工作目录
COPY ./app /codepy1/app

#运行
CMD python /codepy1/app/main.py 
标签: docker 运维 容器

本文转载自: https://blog.csdn.net/qq_53679247/article/details/130552615
版权归原作者 桂亭亭 所有, 如有侵权,请联系我们删除。

“在docker上安装运行Python文件”的评论:

还没有评论