目录
第一步: 安装Docker
下面两种安装docker环境的方式中选其一
方式一: 下载Docker Desktop并配置Nvidia-docker2
1.1 下载并安装 Docker Desktop
从docker的官方网站下载并安装:
1.2 在Docker Desktop中配置Nvidia docker环境
1.2.1 用下面的命令行代码在WSL2的环境中安装nvidia-docker2:
在WSL2 terminal中输入
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-docker2
sudo sed -i 's/#swarm-resource = "DOCKER_RESOURCE_GPU"/swarm-resource = "DOCKER_RESOURCE_GPU"/' /etc/nvidia-container-runtime/config.toml
1.2.2 在docker desktop界面修改Docker daemon配置文件添加使用nvidia容器的部分
打开 Docker Desktop:
点击右上角那个齿轮文件打开设置菜单:
选择Docker Engine选项
复制下面的内容到文本编辑框中:
注意逗号也要复制而且要粘贴到
"buildkit": true }
的大括号后面
,
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
注意整个json文本框里的内容应类似下面这样:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"features": {
"buildkit": true
},
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
然后点击Apply and Restart,注意这里如果是编辑框中如果出现语法错误,那么Apply and Restart这个按键会是灰色不可点击的,请修改格式正确后继续。
1.2.3 检查一下WSL2中的docker环境在修改后是否正确运行:
在WSL2 terminal中输入
docker ps
结果应该于下面类似:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1.2.4 故障排除:
如果出现下面的故障
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:
请运行
在WSL2 terminal中输入
sudo chmod 666 /var/run/docker.sock
附加步骤: 如果docker desktop软件和WSL2没有联通
进入docker desktop的设置界面然后找到Resources选项:
在Resources选项中找到”WSL INTERGRATION“,查看”Enble intergration with my default WSL distro"是否勾选,这里需要勾选并开启对应的Linux系统,然后按Apply & Restart:
方式 二: 使用 Docker-ce + Nvidia-docker2
2.1 在WSL2 terminal中安装docker-ce:
如果已经安装了docker desktop请忽略此步骤,如果是使用WSL2中原生的docker-ce请根据本步骤配置Nidia-docker2
在WSL2 terminal中输入
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update && sudo apt-get install -y --no-install-recommends docker-ce docker-ce-cli containerd.io
2.2 在docker-ce中配置Nvidia docker environment
使用下面命令在WSL2 terminal中配置安装nvidia-docker2:
在WSL2 terminal中输入
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 jq nvidia-docker2
cat /etc/docker/daemon.json | jq 'del(."default-runtime") + {"default-runtime": "nvidia"}' | sudo tee /etc/docker/daemon.json
sudo sed -i 's/#swarm-resource = "DOCKER_RESOURCE_GPU"/swarm-resource = "DOCKER_RESOURCE_GPU"/' /etc/nvidia-container-runtime/config.toml
sudo usermod -a -G docker $(id -un)
在操作完成后请根据Deepracer for cloud的Windows环境配置wiki教程中的