时效性
本篇撰写时间为2021.11.19,由于计算机技术日新月异,博客中所有内容都有时效和版本限制,具体做法不一定总行得通,链接可能改动失效,各种软件的用法可能有修改。但是其中透露的思想往往是值得学习的。
本篇前置:
- ExpRe[6] 云服务器[0] 基础使用,ssh连接
https://www.cnblogs.com/minor-second/p/15553737.html - 这里涉及GPU的部分用到有GPU的云服务器,可能比较贵。当然有GPU的普通机器的用法并没有太多本质区别。
Docker
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。(百度百科)
主要是可移植。因此deepo这种配置好了的镜像我们可以直接拿来用。以后配置环境也可以配好一次到处运行。
我们ssh登上服务器,然后参考
https://docs.docker.com/engine/install/ubuntu/#installation-methods
安装docker
注:参照该教程安装的过程中,这条
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
命令可能造成重启某些重要服务,因此会在终端给出提示。按提示操作即可。
- 过程中碰到一个小问题,当
etc/hostname
中的name没有出现在etc/hosts
中时,sudo
相关的一些命令将显示sudo: unable to resolve ...
.
StackExchange中找到解决方法:在/etc/hosts
中加入127.0.0.1 <name>
这样的行即可。
跟随教程成功看到
Hello from Docker! This message shows that your installation appears to be working correctly.
之后的post-installation steps可做参考。不过此处可以暂时不管。
制作镜像
时效性:截至2021.11.19,由于英伟达闭源驱动问题很多,经常导致黑屏,甚至无法进入恢复模式。所以我们一定要先制作镜像。(这个镜像和docker的镜像是两个意思)
我们在MobaXterm用Ctrl + D
断开连接,再关机。制作镜像。
nvidia驱动
docker一千个好,就是不能把驱动也容器化。
所以需要在开始配置deepo之前装好驱动和nvidia-docker
下图来自deepo的github页面
服务器终端使用命令lspci | grep nouveau
,确认没有任何输出,防止兼容性问题。之后再
sudo apt install ubuntu-drivers-common
ubuntu-drivers devices
按照其recommended
版本安装
注:时至2021.1