ubuntu18.04深度学习环境配置

1. 安装 NVIDIA 显卡驱动

1.1 查看显卡硬件型号

终端输入:ubuntu-drivers devices,获取适合于本机的驱动版本,可以看到如下界面:
在这里插入图片描述
推荐安装的版本号是:nvidia-driver-460 - distro non-free recommended

1.2 安装驱动

  • 安装推荐版本:sudo ubuntu-drivers autoinstall
  • 安装其它版本:sudo apt install nvidia-driver-465(安装的是nvidia-driver-465版本)

1.3 验证成功

终端输入:nvidia-smi , 结果如下:
在这里插入图片描述

2. 安装docker

2.1 卸载旧版本

命令行输入:

sudo apt-get remove docker docker-engine docker.io containerd runc

2.2 使用APT安装

  • 由于 apt 源使用 HTTPS 以确保软件下载过程中不被篡改。因此,我们首先需要添加使用 HTTPS 传输的软件包以及 CA 证书。
$ sudo apt-get update

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
  • 为了确认所下载软件包的合法性,需要添加软件源的 GPG 密钥。
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
  • 向 source.list 中添加 Docker 软件源
$ sudo add-apt-repository \
    "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
    $(lsb_release -cs) \
    stable"
  • 更新 apt 软件包缓存,并安装 docker-ce
$ sudo apt-get update

$ sudo apt-get install docker-ce
  • 启动 Docker CE
$ sudo systemctl enable docker
$ sudo systemctl start docker
  • 建立 docker 用户组

默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。

$ sudo groupadd docker
  • 将当前用户加入 docker 组:
$ sudo usermod -aG docker $USER
  • 退出当前终端并重新登录,进行如下测试。测试 Docker 是否安装正确
$ docker run hello-world

3. pytorch环境

docker pull pytorch/pytorch

docker19跑需要gpu的docker只需要加个参数–gpus all 即可(表示使用所有的gpu,如果要使用2个gpu:–gpus 2,也可直接指定哪几个卡:–gpus ‘“device=1,2”’)

# 使用所有GPU
$ docker run --gpus all nvidia/cuda:9.0-base nvidia-smi

# 使用两个GPU
$ docker run --gpus 2 nvidia/cuda:9.0-base nvidia-smi

# 指定GPU运行

$ docker run --gpus '"device=1,2"' nvidia/cuda:9.0-base nvidia-smi
$ docker run --gpus '"device=UUID-ABCDEF,1"' nvidia/cuda:9.0-base nvidia-smi

运行一个在后台执行的容器,同时,还能用控制台管理:
$ docker run -i -t -d ubuntu:latest

自用: docker run -it --gpus all -p 8022:22 --name="container_name" -v /data/my_data: /data ubuntu:latest

3. SSH设置

3.1 安装ssh

  • 查看当前的ubuntu是否安装了ssh-server服务。默认只安装ssh-client服务
dpkg -l | grep ssh

在这里插入图片描述
上图是已经安装了,若没安装,则如下

  • 安装ssh-server服务
sudo apt-get install openssh-server
  • 确认ssh是否启动
ps -e | grep ssh

在这里插入图片描述

4. VSCode连接docker

4.1 准备

  • 在服务器(宿主机)上(不是服务器的docker里)测试刚刚新建docker容器中哪个端口转发到了服务器的端口,这里设置了服务器中的8022端口转发到服务器中的docker容器的22端口
$ sudo docker port [your_container_name] 22

在这里插入图片描述

  • 也可以直接通过SSH连接到远程docker:
$ ssh root@[your_host_ip] -p 8022
# 密码是你前面自己设置的

4.2 VSCode Remote连接

4.2.1 Remote - Containers连接

关于这部分本人没搞明白,由于安装了Remote - Containers这个插件,并且由于docker在本地,故打开VSCode就能直接使用容器的环境,通过ssh连接,只能后续再补。

在这里插入图片描述

4.2.2 Remote SSH 连接

由于暂时不需要真正的远程故没有真正实践过,具体实践可参考VSCode Remote 体验 | 远程Linux环境开发真香

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值