Ubuntu18.04安装docker以及nvidia-docker
- 1. 成果展示
- 2. 安装环境
- 3. 安装流程
- 3.1 卸载旧版本的docker
- 3.2 使用存储库安装
- 4. 安装 Docker 引擎
- 5.卸载 Docker 引擎
- 6. docker 一键安装方法
- 所以在这里,respect-小鱼
- 7. NVIDIA-docker安装
**前言:**由于最近在学习Apollo 6.0 ,而相关的代码环境都是在docker中跑的,所以,大概花了两个晚上的时间,估计5个小时左右安装了一下docker,以及在docker中使用GPU,也就是NVIDIA-docker,谨以此文,记录一下安装过程,以共大家参考。
1. 成果展示
下面这个视频是安装完docker,以及编译完Apollo代码之后跑的demo
百度Apollo6.0 无人驾驶demo示意
2. 安装环境
- Ubuntu Bionic 18.04 (LTS)
- ( Docker Engine is supported on x86_64 (or amd64), armhf, arm64, and s390x architectures.)
3. 安装流程
3.1 卸载旧版本的docker
旧版本的 Docker 被称为 docker
、docker.io
或 docker-engine
。 如果安装了这些,请卸载它们:
sudo apt-get remove docker docker-engine docker.io containerd runc
如果 apt-get
报告没有安装这些软件包,那也没关系。
3.2 使用存储库安装
- 更新 apt 包索引并安装包以允许 apt 通过 HTTPS 使用存储库:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
- 添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- 使用以下命令设置稳定存储库。 要添加
nightly
或test
存储库,请在以下命令中的单词 stable 之后添加单词 nightly 或 test(或两者)。 连接:了解夜间和测试频道。
echo \
"deb [arch=$(dpkg --print-architecture) 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
4. 安装 Docker 引擎
- 更新apt包索引,安装最新版本的Docker Engine、containerd、Docker Compose,或者进入下一步安装特定版本:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
- 验证安装
通过运行hello-world 映像来验证是否正确安装了Docker Engine。
sudo docker run hello-world
5.卸载 Docker 引擎
- 卸载 Docker Engine、CLI、Containerd 和 Docker Compose 软件包:
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-compose-plugin
- 主机上的映像、容器、卷或自定义配置文件不会自动删除。 要删除所有映像、容器和卷:
您必须手动删除任何已编辑的配置文件。
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
6. docker 一键安装方法
wget http://fishros.com/install -O fishros && . fishros
打开终端,执行以上指令,需要什么选择对应的序号就行,基本上算是行云流水了,我只用过这种方法装ros,至于docker,还没试过,大家可以试试,这种方法挺简单的。
所以在这里,respect-小鱼
7. NVIDIA-docker安装
reference: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker
- 安装前提是cuda和docker以及安装完成。
检查方式:
nvcc --version
systemctl status docker.service
- 如果都没问题的话进入下一步,正式安装:
curl https://get.docker.com | sh
sudo systemctl start docker && sudo systemctl enable docker
- 安装nvidia-docker2
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
curl -s -L https://nvidia.github.io/nvidia-container-runtime/experimental/$distribution/nvidia-container-runtime.list | sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
- 重启docker 守护进程
sudo systemctl restart docker
如果开启docker的时候报了以下错误,则基本上是docker守护进程的错误,需要重新安装或者重启。
安装守护进程的命令如下:
apt-get install nvidia-container-runtime
sudo systemctl restart docker #重启docker服务
- 测试nvidia-docker
sudo docker run --rm --gpus all nvidia/cuda:10.0-base nvidia-smi
**注:**这里镜像的cuda版本不能高于宿主机的cuda版本,我装的是cuda10.2,所以这里只能下载cuda10.2以及以下版本的测试镜像,使用高版本的会报错。
下载完之后出现以下界面则说明docker安装成功: