Ubuntu18.04离线安装cuda,docker和nvidia-docker

发布时间 2023-07-26 16:19:38作者: 柠鸢

近来接手一个项目,服务器没有外网,还缺少一堆基础工具,离线安装相关依赖十分头疼。在此两篇博客记录一下此次经历。

各部件的依赖如下:

Nvida-docker 需要 CUDA驱动,安装CUDA需要GCC编译库,安装GCC需要用到make工具(make非必须)

有关GCC依赖与make工具安装,请看另一篇博客。

1.离线安装CUDA11.4.1

CUDA历史版本地址

1.可以在别的有网的服务器下载好,移过去。或者下载百度云文件

wget https://developer.download.nvidia.com/compute/cuda/11.4.1/local_installers/cuda_11.4.1_470.57.02_linux.run

备注一个10.2的连接

wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run

百度云文件(CUDA11.4.1)

链接:https://pan.baidu.com/s/1C-DzmjWLbKJROo88p75YeQ?pwd=3pqd 
提取码:3pqd 

2.运行此文件(CUDA11.4.1)

sudo sh cuda_11.4.1_470.57.02_linux.run

运行界面如下,直接选择Install即可。

注意!!!!,如果报错缺少诸如GCC这种依赖,请看另一篇博客

如果报错如下,说明内核有问题,换个版本的CUDA,比如10.2

3.运行后,编辑 ~/.bashrc 文件

export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH

4.使环境变量生效

source ~/.bashrc

5.验证是否成功

nvcc --version

2.离线安装Docker

1.下载百度云文件

链接:https://pan.baidu.com/s/1lyD8Rix5LbQSZksyswrsJQ?pwd=4e3d 
提取码:4e3d 

2.解压文件docker-20.10.8.tgz

tar zxf docker-20.10.8.tgz

3.将docker 相关命令拷贝到 /usr/bin,方便直接运行命令

sudo cp docker/* /usr/bin/

注意:你可能会碰到无法重启守护程序的问题,所以去这里

/var/run/docker.pid

打开文件查看现在的进程号

sudo kill -9 进程号

这个文件一般不需要我们手动删除,但如果无法重启守护程序,就需要如此操作。

4.创建此文件sudo vi /usr/lib/systemd/system/docker.service

cd /usr/lib/systemd/system
sudo vi docker.service

内容如下:

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

注意,此文件地址存在争议性,我写下另一种方式,没碰到问题的话忽略这一条,碰到了再看看这个

vim /etc/systemd/system/docker.service

然后赋予执行权能

chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload

5.启动Docker守护程序(不kill掉上面提到的的进程可能会失败)

sudo dockerd &

6.启动 / 停止 docker 服务

systemctl start/stop docker

7.开机自启/取消开机自启 docker 服务

systemctl enable/disable docker

8.检验docker 安装

docker version

注意,此命令可能伴随一些报错或警告,可能是权限问题,去找到对应文件给予权限即可

sudo chmod -R 777 文件名

3.离线安装Nvidia-Docker

1.百度云文件

链接:https://pan.baidu.com/s/1dKPXx5xozACI5WGkTb06og?pwd=nv5d 
提取码:nv5d 

2.依次按照命令安装

sudo dpkg -i libnvidia-container1_1.2.0-1_amd64.deb
sudo dpkg -i libnvidia-container-tools_1.2.0-1_amd64.deb
sudo dpkg -i nvidia-container-toolkit_1.2.1-1_amd64.deb
sudo dpkg -i nvidia-container-runtime_3.3.0-1_amd64.deb
sudo dpkg -i nvidia-docker2_2.4.0-1_all.deb
sudo systemctl restart docker