当前位置: 代码迷 >> 综合 >> 完全离线安装docker,cuda,nvidia-docker
  详细解决方案

完全离线安装docker,cuda,nvidia-docker

热度:62   发布时间:2023-10-17 22:24:55.0

系统是刚装好的ubuntu server 16.04.4 显卡是gtx1080ti,注意,如果不是16.04.4的版本,有可能会出现pcie的报错

首先要安装cuda,首先,联网情况下在一模一样的刚装的系统中安装cuda,安装好后,这时候会装很多的依赖库,注意,所有的依赖库都会保存在/var/cache/apt/archives/ 下面,这时候,需要对这些依赖库作处理:

$sudo mkdir /var/debs
$sudo cp /var/cache/apt/archives/* /var/debs/
$sudo touch /var/debs/Packages.gz
$sudo chmod -R 777 /var/debs/
$sudo dpkg-scanpackages debs  /dev/null  | gzip > debs/Packages.gz

这样,就得到了Packages.gz这个文件,这个文件就记录着这些库的依赖关系

然后,将整个/var/debs/里的所有文件复制到离线服务器中随便一个新建目录(假设是/home/yourname/debs/,注意,这里文件夹的名字也必须是debs)

接着都是在离线服务器上的操作:

$sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
$sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
$sudo gedit /etc/apt/sources.list将sources.list 原来的内容都注释掉。在最后添加
deb file:/var debs/
注意上面的 /var 和 debs/ 之间的空格,以及 “/”。不要写错/var/debs/路径了。$sudo apt-get update
$sudo apt-get install cuda

 

这样,cuda就装好了,接下来安装docker和nvidia-docker:

下载一些docker_ce的依赖:

$mkdir docker_depends

$cd docker_depends

$apt-get download init-system-helpers_1.29ubuntu4_all.deb iptables_1.6.0-2ubuntu3_amd64.deb \

libc6_2.23-0ubuntu10_amd64.deb libdevmapper1.02.1_2%3a1.02.110-1ubuntu10_amd64.deb \

libltdl7_2.4.6-0.1_amd64.deb libseccomp2_2.3.1-2.1ubuntu2~16.04.1_amd64.deb \

libsystemd0_229-4ubuntu21.4_amd64.deb lsb-base_9.20160110ubuntu0.2_all.deb

这几个包是没有安装顺序的,直接dpkg 装就好了

$apt-get download docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb

不知道这一步行不行,总之就是要找到这个版本的docker安装包,其它版本不保证没有新的依赖或者依赖版本不对

顺便下载nvidia-docker的依赖:

$apt-get download libnvidia-container1_1.0.0-1_amd64.deb libnvidia-container-tools_1.0.0-1_amd64.deb\

nvidia-container-runtime_2.0.0+docker18.06.1-1_amd64.deb nvidia-container-runtime-hook_1.4.0-1_amd64.deb\

nvidia-docker2_2.0.3+docker18.06.1-1_all.deb

下载完后,将所有文件复制到离线服务器中,先安装docker-ce,然后nvidia-docker的依赖包顺序是:

libnvidia-container1_1.0.0-1_amd64.deb
libnvidia-container-tools_1.0.0-1_amd64.deb
nvidia-container-runtime-hook_1.4.0-1_amd64.deb
nvidia-container-runtime_2.0.0+docker18.06.1-1_amd64.deb
nvidia-docker2_2.0.3+docker18.06.1-1_all.deb

这样,nvidia-docker就装好了,然后按照https://github.com/NVIDIA/nvidia-docker

的操作来运行nvidia-docker就好了