服务器端
docker配置(pytorch+gpu)
拉取镜像创建并运行容器docker配置
换源(可选)安装ssh安装git(可选) vscode配置
安装插件
Remote - SSH其它插件 可能出现的问题其它常用命令
scp传送文件docker相关
服务器端 docker配置(pytorch+gpu) 拉取镜像- 查询服务器的cuda版本
nvcc -V去官网上查找自己服务器对应的cuda版本镜像,这里用的是1.9.1-cuda11.1-cudnn8-devel
docker pull pytorch/pytorch:1.9.1-cuda11.1-cudnn8-devel查看已经拉取的镜像
docker images
- 设置容器名称为test,允许使用服务器的所有gpu,端口映射从1234到22(22是ssh的端口,不能改动,1234随便选个不被占用的就行),文件夹映射从/data/test到/data,镜像为上一步拉取的pytorch镜像
docker run -it --name test --gpus all -p 1234:22 -v /data/test:/data -d pytorch/pytorch:1.9.1-cuda11.1-cudnn8-devel
此时用ssh连接时设置端口为1234,即可直接远程连接到docker中。服务器的/data/test文件夹中的所有内容全部映射到docker中的/data文件夹下启动容器
docker start test进入容器
docker attach test 或 docker exec -it test /bin/bash查看gpu是否可用
nvidia-smi测试pytorch gpu是否可用 (请确认在conda的base环境下操作)
python # 进入python环境 import torch torch.cuda.is_available()
若输出为True,则说明运行正常,docker的pytorch-gpu配置完成
docker配置安装vim:apt update && apt install vim
换源(可选)若修改为清华源,可在vim修改文件时选择清华镜像站中提供的文本进行替换。注意自己服务器的操作系统版本
cp /etc/apt/sources.list /etc/apt/sources1.list vim /etc/apt/sources.list apt update && apt upgrade安装ssh
- 拉取软件包apt-get install openssh-server设置远程连接密码。最好不为空
passwd root完成ssh相关设置
vim /etc/ssh/sshd_config
直接在文件中添加下面两行即可
PermitRootLogin yes UsePAM no
- 重启ssh
/etc/init.d/ssh restart设置每次开启docker时启动ssh
echo 'service ssh start' >> ~/.bashrc设置无密码远程登陆
在本地电脑上,打开终端,运行ssh-keygen -t rsa
复制本地电脑上~/.ssh/id_rsa.pub中的信息至服务器的~/.ssh/authorized_keys文件中(这里建议用scp复制过去之后使用>输入)
- 拉取软件包apt install git基础设置。示例github账号为test,邮箱为test@qq.com
git config --global user.name 'test'
git config --global user.email 'test@qq.com'生成ssh密钥
ssh-keygen -t rsa -C 'test@qq.com'将密钥添加至github账户中
cat ~/.ssh/id_rsa.pub将github的IP记录到docker中
ssh -T git@github.com
- 直接从vscode中自带的扩展商店中下载Remote - SSH设置ssh连接
选择左侧的远程资源管理器(调试下面),选择SSH Targets,鼠标移动过去,点击加号,输入ssh root@ip -p 1234 -A,(自行替换ip为服务器ip)在弹出的文件中选择~/.ssh/config,此时可以发现左侧的远程资源管理器中增加了你的服务器地址打开工作区
文件-打开文件夹-选择你的工程所在文件夹此时切换到资源管理器(左侧列表第一个)即可看到文件夹中的内容注意,要设置python解释器为conda环境中包含pytorch的那个
ctrl+shift+p,在输入框中输入python:select interpreter,选择base环境中的python/opt/conda/bin/python
- PythonCode Runner(可选)GitLens(可选)Todo Tree(可选)Chinese (Simplified)(可选)Rainbow CSV(可选)彩虹括号(忘记叫啥名字了)(可选)
- pip报错
修改 ~/.pip/pip.conf (没有就创建一个), 内容如下:
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
- 环境变量出错(忘记报错是什么了)
echo 'export $(cat /proc/1/environ |tr ' ' 'n' | xargs)' >> /etc/profile不记得了,想起来再写
直接从Mobaxterm的窗口往里面拖大概率报错说没有权限……
scp -P 1234 本机文件 root@ip:/data
自行替换ip、端口和文件位置。
(不过说实话命令不是很好用,建议下载一个winscp
- 创建容器:docker run -it --name test --gpus all -p 1234:22 -v /data/test:/data -d pytorch/pytorch:1.9.1-cuda11.1-cudnn8-devel启动容器:docker start test进入多终端docker:docker exec -it test /bin/bash进入运行中的容器:docker attach test停止容器:docker stop test重启容器:docker restart test显示所有镜像:docker images删除容器:docker rm test显示所有容器:docker ps -a导出容器(报错 无权限):docker export test > testdocker.tar导入容器为镜像:docker import testdocker.tar testdocker:1.0导出镜像:docker save test > testdocker.tar导入镜像:docker load < testdocker.tar



