Docker使用及本地Yolov5打包教程
1. Docker的安装
注意:官方也提供了直接Pull Yolov5的渠道:
docker pull ultralytics/yolov5
详见:https://hub.docker.com/r/ultralytics/yolov5
如果你想打包你自己修改好的Yolov5项目,请看下文
--------------------------------------------------以下正文-----------------------------------------------------
建议观看本教学视频:05.安装配置_哔哩哔哩_bilibili
官方下载链接:Docker: Accelerated Container Application Development
注意:需要科学上网注册账号
下载好后如下图:
2. Docker的相关指令学习
docker 常用命令大全_docker常用命令_保护我方胖虎的博客-CSDN博客
【Docker系列】从头学起 Docker——docker run 命令详解_搞什么滚去学习的博客-CSDN博客
3. 案例-打包本地修改好的Yolov5包
3.1 找到本地Yolov5的文件夹:
3.2 创建Dockerfile,注意,没有拓展名。
#基于的基础镜像 FROM python:3.9.10 #代码添加到code文件夹 ADD . /usr/src/app/uniform/yolotest # 设置code文件夹是工作目录 WORKDIR /usr/src/app/uniform/yolotest # 安装支持 RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ -r requirements.txt
我这里的基础Python版本为python:3.9.10,你可以按需修改python版本。
Dockerfile详细介绍:Dockerfile 详解_dockerfile为什么不按顺序执行-CSDN博客
其他Python版本参考:https://hub.docker.com/_/python
3.3 在Yolov5项目目录的cmd中创建Image
docker build -t test .
运行时间可能比较长,运行完成的界面:
在Docker Desktop中就可以看到了:
3.4 Image转为Container
在cmd中运行:
docker run -it --gpus all --net=host --ipc=host --privileged=true --name test01 --ulimit core=-1 -v F:/Deep_learning/Dockertest01:/usr/src/app/uniform/data test env LANG=C.UTF-8 /bin/bash
*注意:需要将上面执行命令的F:/Deep_learning/Dockertest01改为你yolov5本地文件夹的路径
具体含义可以参考:【Docker系列】从头学起 Docker——docker run 命令详解_搞什么滚去学习的博客-CSDN博客x
现在CMD界面为:
即创建成功,可以试一试调用Python,测试torch的cuda是否可用:
3.5 导入权重文件和测试照片到Container并测试Yolov5
在Docker Desktop中浏览Yolov5文件目录,将想要测试的pt权重文件和照片导入:
直接将pt文件和测试照片拖入即可:
运行yolov5进行检测:
python detect.py --weights tomato.pt --source xs_4.jpg --conf-thres 0.7
完成: