0x00 前言
前面介绍了如何用Anaconda开发环境进行深度学习环境的搭建,但是有时候我们的服务器不给我们授予root权限,但我们又需要root权限。这时候,docker开发环境就应运而生,完美的解决了这个问题。
本教程中,你将学会以下知识:
- Ubuntu中Docker的安装
- 授予当前用户Docker权限(不用每次都sudo)
- 修改Docker的默认存储位置
- Docker中使用宿主机的GPU(安装NVIDIA Container Toolkit)
- 将当前的Conda环境封装成Docker镜像
0x01 Docker 安装
-
由于
apt
源使用 HTTPS 以确保软件下载过程中不被篡改。因此,我们首先需要添加使用 HTTPS 传输的软件包以及 CA 证书。$ sudo apt-get update $ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg \ lsb-release
-
为了确认所下载软件包的合法性,需要添加软件源的
GPG
密钥。(注释的官方源,由于网络原因,不用)$ curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 官方源 # $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
-
向
sources.list
中添加 Docker 软件源(注释的官方源,由于网络原因,不用)$ echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 官方源 # $ echo \ # "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ # $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-
查询当前系统适配的Docker版本
apt-cache madison docker-ce
上图中被红圈圈出来的是我测试可以成功安装的,前面带
5:
的不行 -
选取一个版本进行安装
sudo apt-get install docker-ce=18.06.3~ce~3-0~ubuntu
-
测试安装是否成功
docker -v
能输出版本就说明成功了!!!
0x02 当前用户加入到Docker组
参考来源:
-
查看当前用户有没有在Docker组里
cat /etc/group | grep docker
-
将相应的用户添加到这个Docker组里
sudo usermod -aG docker <你要加入的用户名>
-
查看是否存在于Dokcer组
cat /etc/group | grep docker
-
重启Dokcer进程
systemctl restart docker
-
当前用户切换到docker组中,测试是否成功
newgrp docker
成功后你就可以不用每次启动docker时都用sudo权限了
0x03 修改Docker的默认存储位置
参考来源:
博主写的很好,亲测有效,这里我就不再增加网络中的垃圾了。
安装NVIDIA Container Toolkit
Installation Guide - NVIDIA Cloud Native Technologies documentation
-
Setup the
stable
repository and the GPG keydistribution=$(. /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
-
安装nvidia-docker2包
sudo apt-get update sudo apt-get install -y nvidia-docker2
-
重新启动docker
sudo systemctl restart docker