pycharm专业版远程调试docker

     场景是这样子:笔记本(ubuntu18.04_192.168.1.2)上安装了pycharm专业版,然后远程调试gpu服务器(ubuntu18.04_192.168.1.3)上的python脚本.

因为默认docker启动后默认没有提供端口访问,在安全性不严格的情况下可以添加一个2375端口,使得其他电脑可以通过该端口访问docker api.可以参考如下操作

1、修改docker服务文件

sudo vim /lib/systemd/system/docker.service

2、找到“ExecStart=/usr/bin/dockerd”,在 dockerd 后添加

-H tcp://0.0.0.0:2375

修改后该行类似如下:

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock

3 重启docker 服务

sudo systemctl daemon-reload  #重新加载服务的配置文件
sudo service docker restart #重启docker服务

接下来在pycharm 中操作

1,新建一个远程python解释器,依次点击 File-Settings-Project:untitled1-Project Interpreter,然后点击右上角的齿轮 Add...

选择 Docker ,点击右侧的 New

 

name输入一个名称,选择 TCP socket方式在Engine API URL中输入http://192.168.1.3:2375,正常情况下会看到Connection successful

用下拉箭头选择需要的docker镜像(注意此处为演示,Server和上一步的Name:gpu不一致,只是截图时间的原因.)

点击OK应该就可以看到此镜像的python包信息

确保Console中Python Console的解释器和项目解释器一致,点击 OK,完成添加远程docker解释器的步骤.

接下来需要配置部署,以实现代码同步的功能,依次点击 Tools-Deployment-Configuration,再点击左上角的+

在Connection选项页中填入 gpu服务器的IP,ssh端口,用户名,密码,

接着在 Mappings(映射)中填写映射信息,即将本地的代码通过sftp上传到gpu的路径.点击OK

接下来新建一个python脚本测试

输入随意内容

然后添加一个调试配置,首先添加Path mappings,Local path(本机项目的路径),Remote path(gpu服务器上的路径,需要和之前的Deployment Path一致)

继续设置 Docker Container settings,添加一个Volume bindings,其中Container path可以任意,Host path需要和之前的Deployment Path一致.

完成后如下所示(不要勾选Run with Python Console!!!),点击OK.

点击右上角的运行后即可远程在docker镜像中运行python脚本.

以上就是用pycharm远程调试docker中python脚本的步骤.记录一下方便自己后续查阅.


版权声明:本文为matrix273原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。