这段时间使用pycharm远程连接docker镜像debug代码,记录一下过程方便回溯
step1 docker容器的配置
首先创建容器,这里我预设的容器端口为8100:
docker run -it --gpus all --shm-size=65536m --ipc=host -v /mnt/data3/wj:/home/wj -p 8100:22 --name demo 4e8cd721fabf bash
开通容器后在ubuntu中开通容器端口:
sudo /sbin/iptables -I INPUT -p tcp --dport 8100 -j ACCEPT
查看服务器当前端口中是否存在:
sudo netstat -ntlp
如果没有可以docker start demo一下 接下来进入docker容器中配置
apt-get install openssh-server
/etc/init.d/ssh start
vim /etc/ssh/sshd_config #vim进上述文件夹修改以下内容:
PermitRootLogin yes
PasswordAuthentication yes
Subsystem sftp internal-sftp
重启ssh服务:
service ssh restart
初始化root密码:
passwd root
至此docker容器内部的配置就已经完成。
Step2 Pycharm连接容器
- 首先下载pycharm专业版,创建new project,选择exising interpreter
- 选择SSH Interpreter,输入服务器的host, port和Username。注意这里的端口不是服务器本身的端口,而是容器的端口,我这里就是8100
- 点击next,输入容器step1设定的密码后会让你选择Interpreter。这里可以进入容器,输出which python来确定
- 上述完成后点击finish,可以点击Test Connection来测试是否配置成功,成功连接的话会出现下面的图
Step3 本地代码和服务器关联
- 打开Tools->Deployment->Configuration->Mappings来关联本地和服务器文件
- 若不想同步某些文件,比如服务器上的数据集等,可以设置Excluded Paths来排除
+Deployment Path 不关联服务器上某些路径文件 +Local Path 不关联本地的某些文件 - download from …从服务器下载文件到本地
upload to …将本地文件上传至服务器
结束!参考: PyCharm连接远程服务器详细教程
|