天天看点

docker 远程连接 文件看不到_pycharm连接远程linux服务器的docker

在我们利用远程服务器部署的docker调试深度学习模型时,需要将代码传来传去,很不方便。这里我们介绍pycharm连接远程服务器docker的方法。

  1. 首先我们启动一个新的pytorch容器,命令如下。关于此步骤更详细的说明,参见ubuntu+docker使用nvidia显卡运行pytorch。6006端口是用来运行tensorboard的,这里重要的是 22端口 。如果希望通过ssh远程连接docker,需要对容器的 22端口 做端口映射。
nvidia-docker run -p 6009:6006 -p 23:22  -it -d --name="torch-remote" -v /home/serveradmin/leon:/workspace   pytorch/pytorch:latest
           

2. 进入容器:

docker exec -it torch-remote bash
           

3. 更新容器的apt源,安装

ssh

vim
apt-get update
apt-get install openssh-server
apt-get install vim
           

4. 使用vim打开并修改配置文件,找到

PermitRootLogin prohibit-password

这一行,修改为

PermitRootLogin yes

,允许通过ssh远程访问docker。

vim /etc/ssh/sshd_config
           

5. 创建docker中root用户的密码。

passwd root
           

6. 启动ssh服务,至此,服务器端配置完毕。

service ssh restart
           

7. 我们在PyCharm中创建一个新项目,命名为docker-remote。在

Tools-Deployment-Configuration

中,按下图配置。注意

Type

选择

SFTP

Port

是步骤1映射的端口,

Password

是步骤5设置的密码。配置完成后,点击

Test SFTP connection

,测试连接是否成功。

docker 远程连接 文件看不到_pycharm连接远程linux服务器的docker

8. 配置本地文件上传至docker的目录:

docker 远程连接 文件看不到_pycharm连接远程linux服务器的docker

9. 在

PyCharm-Preferences-Project Interpreter

里,点击右上角的

设置

按钮,选择

add remote

,配置如下图。注意

Python interpreter path

指的是docker中python的路径。

docker 远程连接 文件看不到_pycharm连接远程linux服务器的docker

10. 接着需要等待一会,待程序配置结束。点击

Tools-Deployment-Automatic Upload

打开文件自动上传功能,上传文件需要一定时间。接着我们就可以实现远程运行和调试啦。

docker 远程连接 文件看不到_pycharm连接远程linux服务器的docker

继续阅读