当前位置:首页 » 《关注互联网》 » 正文

docker部署ubuntu18.04深度学习环境——cuda11.1、cudnn8.0.5、pytorch1.8.0_Double-WW的博客

15 人参与  2021年08月09日 09:03  分类 : 《关注互联网》  评论

点击全文阅读


目录

  • 前言
    • 1 安装nvidia显卡驱动
    • 2 安装docker
    • 3 Docker 修改容器默认存储位置
    • 4 安装docker compose
    • 5 安装nvidia-docker
    • 6 下载 nvidia CUDA 镜像
    • 7 安装python3.8环境
    • 8 安装pytorch1.8
    • 9 提交容器成为新镜像
    • 常用命令附录

前言

一次部署,无限安装😊

1 安装nvidia显卡驱动

参考2.2更新驱动:https://blog.csdn.net/weixin_50008473/article/details/115250986

2 安装docker

详细参考docker官方文档:https://docs.docker.com/engine/install/ubuntu/

sudo apt install docker.io

重启Docker服务

sudo systemctl daemon-reload
sudo systemctl restart docker

3 Docker 修改容器默认存储位置

(1)docker info
Docker Root Dir:/var/lib/docker 是镜像和容器默认存储位置
(2)vim /etc/docker/daemon.json(若没有则创建)
(3)添加以下内容:

{
    "graph":"/data/docker" # 想要修改的存储路径
}

(4)重启docker: systemctl restart docker
(5)再次查看,确定修改位置正确:docker info

4 安装docker compose

可以启动多个容器并建立连接。
(1) 下载对应安装包:

sudo curl -L \
"https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" \
 -o /usr/local/bin/docker-compose

(2)赋予可执行权限:

sudo chmod +x /usr/local/bin/docker-compose

测试:sudo docker-compose --version
结果如下图所示:在这里插入图片描述

5 安装nvidia-docker

Docker只能使用CPU 的资源,需要连接Docker 和宿主机的显卡驱动 —— nvidia-docker
(1)设置稳定版的存储库和GPG密钥:

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

(2)更新:sudo apt-get update
(3)安装:sudo apt-get install -y nvidia-docker2
(4)重启docker:sudo systemctl restart docker
测试:sudo docker run --rm --gpus all nvidia/cuda:11.1-base nvidia-smi

6 下载 nvidia CUDA 镜像

1.sudo vim /etc/docker/daemon.json
2.加入镜像源地址:
添加"registry-mirrors": [https://docker.mirrors.ustc.edu.cn]
如下图所示:
在这里插入图片描述
注:Docker中国区官方镜像:https://registry.docker-cn.com

3.重启docker:systemctl restart docker.service
4.Nvidia docker cuda 官方镜像:https://hub.docker.com/r/nvidia/cuda
在这里插入图片描述5.选择需要的 CUDA版本和cuDNN版本,这里选择了 11.1-cudnn8-devel-ubuntu18.04::
在这里插入图片描述
6.再点击 Tags 并根据刚刚选好的名字进行搜索:
在这里插入图片描述
7.下载镜像:sudo docker pull nvidia/cuda:11.1-cudnn8-devel-ubuntu18.04
8.查看到下载好的镜像:sudo docker images
9.运行docker镜像

sudo docker run -it --name algorithm -v /data/algorithm:/data/algorithm --runtime=nvidia -e NVIDIA_VISIBLE_DEVICE=all nvidia/cuda:11.1-cudnn8-devel-ubuntu18.04

其中:algorithm为自定义容器名;/data/algorithm:/data/algorithm为项目绝对路径:容器内项目路径;nvidia/cuda:11.1-cudnn8-devel-ubuntu18.04为镜像名称。
(1)测试显卡驱动:nvdia-smi
在这里插入图片描述
(2)测试 CUDA: nvcc -V
在这里插入图片描述
(3)测试 CUDNN:ll /usr/lib/x86_64-linux-gnu/ | grep cudnn
在这里插入图片描述

7 安装python3.8环境

1.准备:
(1)sudo apt-get install libffi-dev
(2)make clean && make && make install

2.下载:
(1)下载地址:https://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz
(2)cd 下载路径
(3)解压:tar -xzvf Python-3.8.9.tgz
(4)cd Python-3.8.9

3.安装:
./configure prefix=/usr/local/python3 # 指定安装的目录
make && make install # 编译,安装

4.添加python3和pip3的软链接:

ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

8 安装pytorch1.8

(1)如果下载慢或者超时,设置源(此处为清华源)

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

(2)若出现:subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.

解决方法:

find / -name lsb_release
rm -rf /usr/bin/lsb_release

(3)安装torch1.8.0与torchvision0.9.0

pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 -f https://download.pytorch.org/whl/torch_stable.html

(4)安装 torchaudio

pip install torchaudio==0.8.0 -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

9 提交容器成为新镜像

docker commit -m "提交的描述信息" -a "作者" 容器ID 要创建的目标镜像名称:[标签名]

sudo docker commit -m “v5” -a “double_ww” 0937721faf46 yolov5:1.0
如下图所示:
在这里插入图片描述

常用命令附录

启动/停止容器:docker start/stop container
进入容器:docker exec -it container bash
退出并停止容器:exit
只退出容器,不停止容器:Ctrl+p+q
拷贝文件至容器:sudo docker cp 文件路径 container:容器路径
删除容器:docker rm container

查找镜像:docker search images
下载镜像:docker pull images
删除镜像:docker rmi images
列出本地所有的镜像:docker images -a
列出当前所有正在运行的容器:docker ps
列出所有的容器:docker ps -a
强制停止容器:docker kill container


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/24876.html

镜像  容器  安装  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1