原标题:使用docker部署deepo深度学习训练环境
划重点:
0.爬坑不易,欢迎转载本文以帮助更多的兄弟(姐妹),但要求您保持veryGPU.com链接,谢谢!
1.本文由 veryGPU.com 赞助播出
非常GPU - GPU出租,显卡租赁,2080TI出租
VeryGPU.com
2.重点一在ubuntu安装显卡驱动
3.重点二在安装显卡效能与风扇调节程序以保护显卡
4.重点三在安装适用于nvidia的docker程序
以上三个重点都有巨坑,但按本文指引照做则是坦途,有问题请留言,以下为正文
一、安装系统
最重要的步骤为:重启进入BIOS关闭secure boot,此步若不操作,显卡驱动将不会起效
系统要求:ubuntu 18.04或以上
1.1 更换root密码
sudo passwd root
1.2 开启root ssh
sudo nano /etc/ssh/sshd_config
进入配置文件,将PermitRootLogin的注释去掉,然后将后面的参数值改为yes
1.3 重启
service sshd restart
reboot
1.4 ubuntu 18.04换到阿里云源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
删除原内容替换为以下为源内容
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multivers
update一下
apt update && apt upgrade
二、格式化第二块硬盘(此处为3T)
查看磁盘信息
sudo fdisk -l
Disk /dev/sdb: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 5EA87C6C-F960-4229-B11D-B8A6DD3105DE
Device Start End Sectors Size Type
/dev/sdb1 2048 1050623 1048576 512M EFI System
/dev/sdb2 1050624 500115455 499064832 238G Linux filesystem
Disk /dev/sda: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
2T以下磁盘的操作:
sudo fdisk /dev/sda
之后进入command状态,大概是这么操作的:
输入 m 查看帮助
输入 p 查看 /dev/sdb 分区的状态
输入 n 创建sdb这块硬盘的分区
选 p primary =>输入 p
Partition number =>分一个区所以输入 1
其他的默认回车即可
最后输入 w 保存并退出 Command 状态。
2T以上磁盘的操作:
parted /dev/sd
mklabel gpt
mkpart primary 0KB 3001GB
sudo mkfs.ext4 /dev/sda1
sudo mkdir /home/baidu/ext_data
sudo mount /dev/sda1 /home/baidu/ext_data
图示:
查看uuid
sudo blkid
将硬盘加入fstab,以便自动挂载
sudo nano /etc/fstab
UUID=19eaf440-e368-42a4-b8f1-11a83bf8d10d / ext4 defaults 0 0
UUID=c91765c2-05cc-4184-bcb1-159a74d226b0 /home/baidu/ext_data ext4 defaults 0 0
三、安装显卡驱动
安装之前先卸载已经存在的驱动版本:
sudo apt-get remove --purge nvidia*
3.1 禁用nouveau
sudo nano /etc/modprobe.d/blacklist-nouveau.conf
在最后一行加上:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
保存以后运行
sudo update-initramfs -u
重启输入以下命令查看是否有输出,如果没有输出就禁止成功了
lsmod | grep nouveau
如果依然有输出,则进入以下步骤
sudo apt-get install dkms build-essential linux-headers-generic
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
sudo update-initramfs -u
重启看下nouveau是否被屏蔽了
lsmod | grep nouveau
3.2.使用标准Ubuntu 仓库进行自动化安装
sudo apt install ubuntu-drivers-common
这种方法几乎是所有的示例中最简单的方法,也本教程最为推荐的方法。首先,检测你的NVIDIA显卡型号和推荐的驱动程序的模型。在命令行中输入如下命令:
ubuntu-drivers devices
输出为:
== /sys/devices/pci0000:00/0000:00:02.0/0000:05:00.0 ==
modalias : pci:v000010DEd00001E07sv000010DEsd000012FAbc03sc00i00
vendor : NVIDIA Corporation
driver : nvidia-driver-435 - distro non-free recommended
driver : nvidia-driver-430 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
从输出结果可以看到,目前系统已连接Nvidia 显卡,建议安装驱动程序是 nvidia-435版本的驱动。如果您同意该建议,请再次使用Ubuntu驱动程序命令来安装所有推荐的驱动程序。输入以下命令:
sudo ubuntu-drivers autoinstall
一旦安装结束,重新启动系统。
sudo reboot
重启后 ,输入以下命令查看显卡信息
sudo nvidia-smi
四、根据温度自动调节显卡风扇
操作步骤
git clone https://github.com/liqiang311/set-gpu-fans.git
mv set-gpu-fans /opt
apt-get update
apt-get install -y xinit tcsh
cd /opt/set-gpu-fans
chmod +x cool_gpu
chmod +x nvscmd
apt install supervisor
sudo nano /etc/supervisor/conf.d/cool_gpu.conf
输入以下内容
[program:cool_gpu]
command=nohup ./cool_gpu &
directory=/opt/set-gpu-fans
user=root
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisor/cool_gpu.err.log
启动以控制风扇
sudo supervisorctl update
sudo supervisorctl reload
sudo supervisorctl start cool_gpu
查看是否成功
sudo nvidia-smi
有 /usr/lib/xorg/Xorg 8MiB 在跑,说明成功
重启测试是否可以自动跑
五、 安装 docker
sudo apt install docker.io
六、安装nvidia-container-runtime
运行以下命令
# Add the package repositories
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
更新
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
安装nvidia-container-runtime
sudo apt-get install nvidia-container-runtime
继续
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/override.conf <
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --host=fd:// --add-runtime=nvidia=/usr/bin/nvidia-container-runtime
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
继续
sudo tee /etc/docker/daemon.json <
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}
EOF
sudo pkill -SIGHUP dockerd
配置docker自动启动
systemctl enable docker.service
七、 安装deepo
deepo GitHub 地址 ufoym/deepo
官方源下载
docker pull ufoym/deepo
网易源下载
docker pull hub-mirror.c.163.com/ufoym/deepo
启动 deepo
docker run --runtime=nvidia -d -v /home/baidu/ext_data:/ext_data -v /host/baidu/config:/config -v /home/baidu/data:/data -v /home/baidu/jupyter:/root -it -p 8888:8888 -p 2022:22 --ipc=host --restart=always ufoym/deepo:all-jupyter jupyter notebook --no-browser --ip=0.0.0.0 --allow-root --NotebookApp.token= --notebook-dir='/root'
能看到容器启动信息,则说明安装成功
八、结语
关于deepo的使用,待新开长文另行介绍,如果您或同学朋友需要租用GPU,不可错过http://veryGPU.com返回搜狐,查看更多
责任编辑: