docker和nvidia docker安装过程中都需要Add Docker's official GPG key,这些GPG key经常下载不了,需要科学上网先单独下载gpg文件然后用不同方式安装到指定地方后才能往下执行后面的安装步骤,例如:

Ubuntu22.04下安装docker,需要下载gpg文件安装到/etc/apt/keyrings/docker.asc,按照官网列的命令

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc 

或

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

十有八九因为下载不了文件而报错,可以科学上网用上面的地址下载到gpg,然后拷贝到

/etc/apt/keyrings/docker.asc 或/etc/apt/keyrings/docker.gpg即可

Ubuntu20.04下安装docker时使用的命令

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

遇到下载不了gpg时也是类似处理

安装nvidia-docker的命令
 

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

可以分拆为

curl -O https://nvidia.github.io/libnvidia-container/gpgkey 
sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg gpgkey
curl -O https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list
cp nvidia-container-toolkit.list /etc/apt/sources.list.d/nvidia-container-toolkit.list
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g'

里面curl命令下载文件的都需要到能科学上网的服务器上去执行下载到文件,然后拷贝到不能科学上网的服务器上,再执行sudo gpg ...安装或拷贝命令安装这些文件到指定地

执行完docker和Nidia docker的安装后,执行sudo apt-get update,然后安装nvidia container toolkit:

export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.17.8-1

sudo apt-get install -y \
      nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}

安装完后就可以创建docker容器在容器里部署代码使用gpu训练模型了

更多推荐