liunx上配置nvidia-docker,并创建深度学习环境

ubuntu+nvidia-docker+cuda+anaconda+pytorch配置

1. 安装dcoker

ubuntu下的docker安装简单可以通过apt-get工具完成,可以参考链接: Ubuntu Docker 安装.
卸载旧版本之后,执行docker --version仍可以看到docker版本
在这里插入图片描述
可以采用另一种方式:

sudo apt-get purge docker
sudo apt-get purge docker-ce
sudo apt-get remove -y docker-*

2. 安装nvidia-docker

2.1 参考链接.

2.2 直接使用官方命令安装

# 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                        ## 重启docker

2.3 测试 执行docker run --gpus all nvidia/cuda:9.0-base nvidia-smi,最后输出

在这里插入图片描述

2.4 如果出现:docker: Error response from daemon: Unknown runtime specified nvidiawhile running nvidia docke ,

To register the runtime, use the method below that is best suited to your environment.
You might need to merge the new argument with your existing configuration.

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/override.conf <<EOF
[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

Daemon configuration file

sudo tee /etc/docker/daemon.json <<EOF
{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}
EOF
sudo pkill -SIGHUP dockerd

安装完成之后可以通过nvidia-docker查看镜像和容器
在这里插入图片描述

3 通过nvidia-docker创建pytorch容器

3.1 拉取pytorh镜像

docker pull nvcr.io/nvidia/pytorch:19.01-py3

docker hub的拉取速度过慢可以在 etc/docker 下面的daemon.json文件中添加参数修改为国内的镜像源,例如中科大的docker镜像源。

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [""https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

3.2 启动docker容器

参考链接

NV_GPU=0,1,2,3,4,5,6 nvidia-docker run -it --ipc=host --name pytorch -v /data:/data  nvcr.io/nvidia/pytorch:19.10-py3

参数说明:
-nv_gpu: 映射的gpu卡;
–name :容器的名称;
-v /data:/data:左边是外部路径,右边是内部路径,例如我的文件放在/home/ubuntu/data下,需要挂载到docker内部的路径是/data,则参数配置应该是-v /home/ubuntu/data:/data;
nvcr.io/nvidia/pytorch:19.10-py3为容器的依托镜像。

至此所有环境配置完成,容器里面也有torch和conda。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值