docker最简单部署python项目

进入宿主机把python代码添加到的/home目录

下载:

docker pull python:3.8

docker最简单部署python项目_第1张图片

开始操作

a.sh脚本:

#!/bin/sh
#执行的python代码
python /home/yolov5-5.0/tiger_fastapi.py 
##在脚本最后一行添加tail -f /dev/null,这个命令永远完成不了,所以该脚本一直不会执行完,所以该容器永远不会退出
tail -f /dev/null

ddockerFile:

#基于的基础镜像
FROM python:3.8
COPY ./a.sh /home/
RUN chmod 777 /home/a.sh
ENTRYPOINT ["/home/a.sh"]

打镜像:

docker build -t python38 -f Dockerfile .

运行镜像:

docker run -v /home/yolov5:/home python38

容器不会停止,不用担心,进入容器.开始操作即可,直到成功运行起来

docker exec -it happy_ritchie /bin/bash

在容器中可以直接玩,直到搞定运行环境就行

在容器中调试代码
root@3b8ac3f9083e:python tiger_fastapi.py

在线调式代码下载包等
pip install requirements.txt

离线准备:

1.生成requirements.txt
为了便于新环境部署,python项目中需要包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号
requirements.txt可以通过pip命令自动生成和安装
生成requirements.txt文件
cd 项目目录

2.执行 pip freeze > requirements.txt
在其他idea上下载包命令也写一下:
pip download -d /home/packages -r requirements.txt -i https://pypi.douban.com/simple

3.使用离线包也可以,把之前下载好的包导入 -r覆盖操作,--find-links=packages路径指定到/hmoe文件下
pip install --no-index --find-links=packages -r requirements.txt

 

环境无问题时候,成功运行将此容器打成镜像:

docker commit -a="作者" -m="说明python38运行yolov5" 容器id-3b8ac3f9083e 镜像名yolov5

 再运行打好的镜像即可,里面环境啥的都是对的.以后更新代码到宿主机的/home目录下就行

docker run -id -p 8082:8082 -v /home/yolov5:/home --name=yolov5 yolov5 

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