使用docker训练yolov5
- 配置docker,配置的好处是docker中的环境或者说容器坏了不影响主机,并且可以减少配置环境的时间和精力
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
- 拉取yolov5 docker
sudo docker pull ultralytics/yolov5:latest
- 查看拉下来的docker镜像
- 创建yolov5 docker容器
sudo docker run -it --gpus all --net=host --ipc=host --privileged=true --name torch1.8 --ulimit core=-1 -v /window:/mnt ultralytics/yolov5 env LANG=C.UTF-8 /bin/bash
# --net=host 容器与主机共享网络 https://blog.51cto.com/u_15119353/5058547
# --ipc=host 与主机共享内存
# --privileged=true 使容器拥有root权限
# --name 容器名称
# --ulimit core=-1 使容器可以生产core文件
# -v ${path1}:${path2} 将path1挂载到容器path2中
# --gpus all 使用主机所有gpu
- 创建过程遇见gpu报错:
docker: Error response from daemon: could not select device driver “” with capabilities: [[gpu]].
参考以下帖子:https://blog.csdn.net/weixin_44966641/article/details/123760614
最后需要重启docker
sudo systemctl restart docker - 在docker开启ssh
如果没有安装ssh 可以参考:https://blog.csdn.net/weixin_43833430/article/details/127262464
1.安装ssh
apt-get install -y openssh-server
systemctl enable ssh
2.修改docker中的ssh配置,vim /etc/ssh/sshd_config
修改port 22 为 port 10022
修改为 PermitRootLogin yes
3. 启动ssh
修改root密码
passwd
启动ssh
/etc/init.d/ssh start
4. 在/root/.bashrc中加入/etc/init.d/ssh start,使ssh自启
即可开启ssh 远程到 docker中
- docker中Python的路径在/usr/bin/python,已经安装好Python库,只需要git下载源码直接跑就可以了,如果用vscode远程的话直接能找到环境。