赞
踩
目录
注意这里我们使用的是alpine版本,与常用版本没有太大的区别,主要的优点就是体积很小!!
docker pull python:3.8-alpine
docker run -itd python:3.8-alpine /bin/sh
docker exec -it py容器的id /bin/sh
退出ctrl+D
打包成镜像需要的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博客
将事先准备好的文件放入新建的app文件夹中,Dockerfile可以等上传到服务器上时再写也行。
Dockerfile的后缀名为没有,不是txt,如果有后缀运行是会报错的,请注意
docker build -t viewadd .
我们更改我们原来的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 .
可能会报错,如下。
修复错误
修改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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。