Docker for DL in Ubuntu 18.04
[TOC]
Install Docker
Install Docker,查看左侧Ubuntu安装即可。
Install nvidia-docker
禁用系统默认显卡驱动
1
2
3
4
5
6
7
8
9sudo nano /etc/modprobe.d/blacklist.conf
# add context in the end of file
# for nvidia display device install
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb保存后,更新内核:
1
sudo update-initramfs -u
重启电脑sudo reboot
,然后使用lsmod | grep nouveau
,没有输出则表示禁用成功。
安装RTX 2080Ti显卡驱动
卸载默认Nvidia驱动1
sudo apt-get --purge remove nvidia-*
如果本身是图形界面,则需要进入无图形模式
1
sudo telinit 3
然后使用
CTRL+ALT+F1
键,进入tty1,输入账号密码进入。此时可能遇到中文不能显示问题,可先提前将
.run
文件放置根目录,避免中文路径从官网查看下载2080Ti最新驱动
.run
文件,并添加运行权限:1
sudo chmod +x NVIDIA-Linux-x86_64-430.50.run
然后执行安装
1
sudo ./NVIDIA-Linux-x86_64-430.50.run
第一个预安装检查会报错,点击继续安装。
驱动完成安装!
如果遇到下面错误
1
2 > WARNNING: Unable to find suitable destination to install 32-bit compatibility libraries
>
解决办法
1
2
3 > sudo dpkg --add-architecture i386
> sudo apt update
>
sudo apt install libc6:i386
1
2 >
>
安装NVIDIA Container Toolkit
官网,前提即完成Nvidia的驱动安装,不需要安装CUDA。
1
2
3
4
5
6
7# 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
测试一下:
1 | #### Test nvidia-smi with the latest official CUDA image |
1 | Thu Oct 17 10:11:06 2019 |
Use Docker for DL
创建数据卷
需要区分下type的区别 (不使用此方法,卷会默认于docker目录而不是想要的目录)
1 | docker volume create -d local \ |
way2:
首先使用账户chen
创建所需要挂载的目录(即保证目录的owner为chen, docker自行创建的为root)
然后直接使用 mount 参数进行挂载即可
运行image
使用deepo
1 | docker run \ |
gpus 表示使用所有GPU
it 表示ternimal
d 表示守护式启动
p 表示端口映射
– mount 添加挂载
查看所有container
1 | docker container ls |
进入container
1 | docker exec -it <PID> bash |
删除未运行container
1 | docker container prune -f |
install docker-compose
使用pip安装
1 | sudo pip install -U docker-compose |
bash 补全命令
1 | curl -L https://raw.githubusercontent.com/docker/compose/1.24.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose |
install docker-registry
pass
pycharm remote connect docker(GPU)
首先运行docker并暴露22端口
1 | docker run \ |
进入容器后,开启root的远程SSH连接
1 | apt update && apt install -y openssh-server && apt install -y nano |
修改/etc/ssh/sshd_config
文件,添加
1 | PermitRootLogin yes |
重启SSH服务
1 | service ssh restart |
设置root
密码后,验证连接
1 | # 容器内使用22端口 |
添加pycharm
的远程连接