python项目镜像打包

  1. 生成项目依赖包
#在项目根目录执行
pip freeze > requirements.txt
  1. 下载相应的版本的paddlepaddle,下载网址开始使用_飞桨-源于产业实践的开源深度学习平台 (paddlepaddle.org.cn),文件放到根目录

  2. 根目录下编写Dockerfile 文件

python项目镜像打包_第1张图片

FROM python:3.8
COPY . /djdacx-util
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
WORKDIR ./djdacx-util
RUN python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple/
RUN python -m pip install paddlepaddle-2.4.2-cp38-cp38-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple/
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

FROM python:3.8 《----- 指定python的版本镜像

COPY . /djdacx-util 《----- . 小点代表复制全部 /djdacx-util 从当前目录下

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 《-----应该是设置时间 不重要 可有可无

RUN echo ‘Asia/Shanghai’ >/etc/timezone 《---- 时间 可有可无

WORKDIR ./djdacx-util 《---- 设置镜像的工作目录

RUN python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple/《---- 更新pip,可以不执行

RUN python -m pip install paddlepaddle-2.4.2-cp38-cp38-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple/《---- 安装noavx版本的paddlepaddle(博主此次安装所需的安装包,PaddlePaddle相关,你们不需要这条命令)

RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/ 《---- 安装依赖包

EXPOSE 8000 《-----对外暴露的端口信息

CMD [“uvicorn”, “main:app”, “–host”, “0.0.0.0”, “–port”, “8000”] 《-----这里的端口号一定要跟你项目里面的端口号一致

  1. 构建项目镜像
docker build -t djdacx-util .           #djdacx-util为镜像名
  1. 启动镜像,可以通过可视化软件 Dokcer Desktop 或者命令行启动
#mycontainer:容器名 djdacx-util:镜像名 28000:容器端口 需要指向项目的端口 8000 
docker run -d --name mycontainer -p 28000:8000 djdacx-util 
  1. 查看容器运行情况
docker ps

你可能感兴趣的:(python,docker,python,docker)