目录

  1. 先安装Nvidia最新驱动:
    1.1 保持ubuntu18.04原生系统的国内源不变
    1.2 更新源列表
    1.3 添加Nvidia显卡驱动专用源
    1.4 sudo apt-get update
    1.5 列出当前系统的显卡驱动信息和可安装的驱动
    1.6 自动安装推荐驱动【这一步下载比较慢,可ctr+C中断后重新安装续传,会提高网速】
    1.7 安装完重启,会覆盖原驱动,所以无需手动屏蔽旧驱动
    1.8 无法进入系统问题
    1.9 重启后查看一下显卡信息:
  2. 安装docker
    2.1 执行安装脚本
    2.2 测试一下
    2.3 Ubuntu添加用户到docker组用户,免sudo执
  3. docker命令大全

1. 先安装Nvidia最新驱动:

1.1 保持ubuntu18.04原生系统的国内源不变

1.2 更新源列表
sudo apt-get update

1.3 添加Nvidia显卡驱动专用源
sudo add-apt-repository ppa:graphics-drivers/ppa

1.4 sudo apt-get update

1.5 列出当前系统的显卡驱动信息和可安装的驱动
ubuntu-drivers devices

1.6 自动安装推荐驱动【这一步下载比较慢,可ctr+C中断后重新安装续传,会提高网速】
sudo ubuntu-drivers autoinstall

1.7 安装完重启,会覆盖原驱动,所以无需手动屏蔽旧驱动
sudo reboot

1.8 无法进入系统问题
如果是双系统,重启后有可能会导致黑屏或无法进入ubuntu系统,导致这一问题的原因有两个,一是新显卡驱动没有被ubuntu加载 二是部分笔记本电脑不支持这种安装方式。
针对第一个问题的做法是开机进入grub选择界面后按“e”,进入引导脚本编辑模式,在quiet splash之后添加acpi_osi=linux nomodeset,用以告诉内核即将启动linux,接下来加载linux相关驱动程序,如此,即可匹配到新安装的nvidia驱动,nomodeset意思是告诉内核不要加载显卡而用BIOS模式直到图形界面运行为止,该配置项在开机后需要添加到/boot/grub/grub.conf中。
第二个问题可以通过去官网下载英伟达闭源驱动包.deb进行手动安装,安装后会屏蔽ubuntu自带驱动,无需手动屏蔽

1.9 重启后查看一下显卡信息:
nvidia-smi

lg6@lg6:~$ nvidia-smi
 Tue Oct 15 21:19:15 2019
 ±----------------------------------------------------------------------------+
 | NVIDIA-SMI 430.26 Driver Version: 430.26 CUDA Version: 10.2 |
 |-------------------------------±---------------------±---------------------+
 | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
 | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
 |=++|
 | 0 GeForce MX250 Off | 00000000:02:00.0 Off | N/A |
 | N/A 43C P0 N/A / N/A | 342MiB / 2002MiB | 0% Default |
 ±------------------------------±---------------------±---------------------+
 ±----------------------------------------------------------------------------+
 | Processes: GPU Memory |
 | GPU PID Type Process name Usage |
 |===============================================================|
 | 0 1139 G /usr/lib/xorg/Xorg 205MiB |
 | 0 1429 G /usr/bin/gnome-shell 136MiB |
 如果有类似这种信息出现,说明显卡驱动安装成功

2. 安装docker

2.1 执行安装脚本
./dockerInstall.sh

#!/bin/sh
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

# 清理以前的。If you have nvidia-docker 1.0 installed: we need to remove it and all existing GPU containers
sudo docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker
sudo apt autoremove

# 执行命令。Add the package repositories
# command 1
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -

# command 2
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

# command 3
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

# 正式安装。Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

2.2 测试一下
sudo docker run --runtime=nvidia --rm nvidia/cuda:10.0-base nvidia-smi

如果有类似上面表格样式的输出信息,证明成功。【如果没装cuda10.0,这一步会自动安装,等待即可】

2.3 Ubuntu添加用户到docker组用户,免sudo执
方法一:
直接执行docker命令会遇到权限问题, 原因是/var/run/docker.sock文件,除root用户,只有docker组用户才可读写
2.3.1 查看全部组用户

cat /etc/group

2.3.2 将当前用户加入到docker组
$ sudo gpasswd -a 用户名 docker
2.3.3 然后logout 当前用户,重新登录,就好了

方法二:
如果/etc/group/不存在docker,使用下面方法
将用户添加到docker用户组就不用每次都 sudo了。
2.3.4首先创建用户组
sudo groupadd docker

2.3.5将用户加如组
sudo gpasswd -a ${USER} docker

2.3.6重启服务
sudo service docker restart

2.3.7切换当前会话到新组
newgrp - docker

3. docker命令大全