[记录]配置Docker出现的错误

  为了方便管理实验室的GPU资源,上了多层虚拟化,在部署和运维Docker节点的过程中踩了一些坑,在这记录一下,以便日后查阅。

1、Docker服务无法启动

问题定位: Docker启动的时候传入了命令行参数,同时也指定了配置文件,两个配置发生了冲突。

解决方法:

「记录」在vSphere中基于Ubuntu Server 1604部署Docker,并安装CUDA,构建多层虚拟化深度学习开发环境

首先准备好Ubuntu Server 1604的虚拟机,只设定基本功能,不添加显卡直通等特殊功能,以便于基础环境完成后进行快照。

安装好系统后,进行ssh端口设置,apt换源,apt upgrade等基本操作,之后关机打快照。

1、 显卡直通:

1.1、 修改虚拟机硬件设置,勾选“预留所有客户机内存(全部锁定)”,并添加显卡PCI设备,确定修改。

1.2、 修改虚拟机硬件设置,切换到“虚拟机硬件”选项卡。展开“高级”,修改“配置参数”。 在打开的“配置参数”对话框中,点击“添加配置参数”,填入“
hypervisor.cpuid.v0 = FALSE”
,确定修改。完成后务必再次进入“配置参数”,检查参数确实已经添加并保存!

2、 安装显卡驱动:

2.1、 下载驱动,可以在 NVIDIA驱动下载 或者 Geforce显卡驱动下载 页面搜索并下载需要的驱动程序,也可以通过直接拼接资源链接:
http://cn.download.nvidia.com/XFree86/Linux-x86_64/[驱动版本号]/NVIDIA-Linux-x86_64-[驱动版本号].run,进行下载。比如我要下载430.14版本号的Linux驱动,可以直接在服务器运行以下代码:

2.2、 检查GPU,应该显示相应的PCI设备

2.3、 禁用nouveau

2.3、 安装显卡驱动

然后开机安装docker,去清华源帮助文档里找清华源安装方法。安装好之后配置docker远程管理,参考“docker 配置 TLS 认证开启远程访问”“Docker 守护进程+远程连接+安全访问+启动冲突解决办法 (完整收藏版)”。配置好docker之后关机打快照。

在ESXi中添加显卡直通,并启动。