一、Docker部分
1.1:查看Docker环境
# 查看本机中的容器
sudo docker ps -a
运行结果如下:
上图显示主机中存在三个创建好的Docker容器。若无显示,则看"1.2"节新建Docker容器。
主机和容器以端口的映射作为沟通的桥梁其中红色划线的“8000:8097” ,"8000"端口指的是主机端口,“8097”指的是这个容器内部的端口。
1.2:新建Docker容器
sudo docker --gpus all run -ti -v /home/user/xxxx:/workspace/ --name xxxx -p 8000:8097 pytorch/pytorch:1.6.0-cuda10.1-cudnn7-devel
1./home/user/xxxx:/workspace/
/home/user/xxxx 是主机中打算在Docker环境中运行或使用的文件,/workspace是此次创建的Docker容器的根文件,且只包含主机中/home/user/xxxx 目录下的内容。
2.- -name 是容器的名字
3.-p 8000:8097 是把Docker内部的8097端口映射到主机的8000端口,达到文件互通,沟通的目的。
1.3:配置Docker容器
因为新建Docker容器后,会自动进入容器内部。
所以配置之前检查当前所处位置,是处于"主机"位置还是”容器“内部。
若如下图所示,则在容器内部:
-----------------------------------------------------------------------------------------------------------------------
若在主机位置,则进行以下操作:
1.启动创建好的容器:
sudo docker start 创建容器的名字
2.链接进容器:
sudo docker attach 创建容器的名字
Docker容器内的配置操作
注:下列操作均在容器内进行,若在主机位置需进入容器!!!
为docker配置vim,修改sshd_config,设置密码(vscode连接Docker所用密码)
# 更新软件库
apt-get update
# 安装vim
apt-get install -y openssh-server vim
# 修改下面的文件:
# 1.将”PermitRootLogin“的值改为”yes“,并取消注释
# 2.将#Port 22改为Port 8097(修改ssh默认的端口为容器的端口号)
vi /etc/ssh/sshd_config
# 重启ssh服务
/etc/init.d/ssh restart
# 设置”vscode“连入docker容器的验证密码
passwd
二、Vscode部分
第一步:
没有安装Remote-SSH插件的话请先安装。
第二步:
注意:远程连接Docker时,需要使用“root”用户!!!
按照下图指示找到 ssh连接输入框
输入 ”ssh root@主机ip地址 -A -p 主机用于映射的端口“
本例中,主机用于映射的端口号为 8000
第三步:
1.选择常用的配置文件或者输入新文件路径(一般选择第一个)。
第四步:
左下角弹出。
第五步:
选择"Open Config",将红框框出的Host的值改成我们易于区分的(例如单卡机_docker)
第六步:
刷新,选择自己想要的配置,就可以打开文件并使用Docker容器的运行环境了~