1、建立Docker容器,指定Shm共享内存。
docker run -d -it --name yolov5 --gpus all -p 20000:22 --shm-size 16g dockerproxy.cn/nvidia/cuda:12.2.0-devel-ubuntu22.04
2、进入容器,升级安装器apt
docker exec -it f7383b766c6d /bin/bash
apt-get update
apt-get install vim
3、安装ssh连接,并设置密码、开机启动
apt-get install openssh-server
passwd
添加root连接权限
vim /etc/ssh/sshd_config
注释这一行PermitRootLogin prohibit-password
添加一行PermitRootLogin yes
然后保存退出,重启服务
/etc/init.d/ssh restart
在 /root 目录下新建一个 start_ssh.sh文件,并给予该文件可执行权限
vim /root/start_ssh.sh
脚本内容为
#!/bin/bash
LOGTIME=$(date "+%Y-%m-%d %H:%M:%S")
echo "[$LOGTIME] startup run..." >>/root/start_ssh.log
service ssh start >>/root/start_ssh.log
chmod +x /root/start_ssh.sh
将start_ssh.sh脚本添加到启动文件中
vim ~/.bashrc
# startup run
if [ -f /root/start_ssh.sh ]; then
/root/start_ssh.sh
fi
source ~/.bashrc
4、设置CUDA环境变量
vim ~/.bashrc
export LD_LIBRARY_PATH=/usr/local/cuda/lib
export PATH=$PATH:/usr/local/cuda/bin
source ~/.bashrc
5、测试CUDA可用性
nvidia-smi
nvcc -V
6、安装Python3.8.10
安装底层包
apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
apt-get install lzma
apt-get install liblzma-dev
apt-get install libbz2-dev
下载Python-3.8.10.tar.xz,并拷贝至容器中,解压安装
tar xvJf Python-3.8.10.tar.xz
cd Python-3.8.10
./configure --enable-optimizations
make
make install
测试版本
python3 -V
找到容器中原有Python3对应的bzip2 的 .so 文件_bz2.cpython-36m-x86_64-linux-gnu.so,我的是在3.6环境下安装的因此位置在 /usr/lib/python3.6/lib-dynload/ 下,将对应的 .so 文件 复制python3.8 对应的目录下(我的是/usr/local/lib/python3.8/lib-dynload/ 需要根据你自己安装的位置寻找)
并将文件名中“36m” 修改为 “38” 即可。
tips:(find命令) find (目录起点) -name 加上文件名 查找文件比较快
可以使用whereis python3 来找到系统默认的python 环境的位置。
7、安装git并拉取yolov5代码,此时tag为7.0
apt-get install git
mkdir /project
cd /project
git clone https://github.com/ultralytics/yolov5.git
cd yolov5
8、安装pytorch,因为此时在容器内部,所以不再安装虚拟环境,pytorch与torchvision版本选取如下,下载拷贝安装即可
pip3 install /work/torch-2.3.0+cu121-cp38-cp38-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install torchvision-0.18.0+cu121-cp38-cp38-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
9、安装其他依赖,安装前,使用vim打开requirements.txt,将torch与torchvision注释,因为这是cpu版本
pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
安装额外依赖
pip3 install opencv-python-headless -i https://pypi.tuna.tsinghua.edu.cn/simple
10、设置gpu可见性环境变量
vim ~/.bashrc
export CUDA_VISIBLE_DEVICES=0
source ~/.bashrc
标签:Yolov5,训练,CUDA12.2,apt,start,ssh,install,root,dev From: https://www.cnblogs.com/jinyuanbao/p/18548166