pycharm 配置远程docker解释器

转载地址:https://bbs.huaweicloud.com/forum/thread-106550-1-1.html

作者:Chris-Wang

最近试用华为的深度学习框架mindspore(mindpore-gpu-1.1.0),由于没有配套运行的ubuntu环境,只能拉取docker镜像来用。在此记录一下在centos的gpu服务器(内网)和本机win10 企业版 pycharm 2020.3 专业版之间搭起的代码调试环境,此教程应同样适用于intellij。

一、服务器端配置

1、修改服务器docker的配置文件

执行命令:vim /lib/systemd/system/docker.service

Snipaste_2021-02-09_00-33-13.jpg

2、将管理地址写入 /etc/profile
执行命令:echo 'export DOCKER_HOST=tcp://0.0.0.0:2375' >> /etc/profile
执行命令:source /etc/profile
3、重启服务
执行命令: systemctl daemon-reload && systemctl restart docker

服务器端已经支持nvidia-docker,不支持的可以查询安装

到此服务器端配置暂时完成

二、本地pycharm配置

1、增加docker解释器

Snipaste_2021-02-09_00-34-04.jpg

Snipaste_2021-02-09_00-34-29.jpg

Snipaste_2021-02-09_00-35-06.jpg

当看到如上图所示的「连接成功」,则表示已成功连接到了 docker 镜像。然后点击 「确定」。

Snipaste_2021-02-09_00-35-25.jpg

选好你需要的镜像,点击「确定」。

由于服务器不能链接外网,这里会报出一个错误can't retrieve image id from build stream。引用下pycharm官网的说明

Snipaste_2021-02-09_00-35-47.jpg

因此我们只能把busybox:lastest这个镜像手动或者通过私有仓库放到服务器。

Snipaste_2021-02-09_00-35-59.jpg

然后就可以看到已经显示了远程docker容器的解释器被配置。

2、在当前已经配置了解释器的项目下新建一个验证脚本hello_word.py

print("hello world!")

3、配置服务器和文件映射关系

(1)配置远程服务

Snipaste_2021-02-09_00-36-27.jpg

(2)配置本地文件与服务器文件间的映射关系。

Snipaste_2021-02-09_00-37-34.jpg

4、上传脚本文件到服务器

Snipaste_2021-02-09_00-38-03.jpg

5、配置脚本运行环境

在编辑配置信息

Snipaste_2021-02-09_00-38-42.jpg

Snipaste_2021-02-09_00-40-52.jpg

假设 Docker 中的工作目录为:/home/leaf/project,配置 「路径映射」如下。

Snipaste_2021-02-09_00-41-45.jpg

配置 「Docker 容器设置」,默认情况下,其地址是指向本地的。这里我们将其更改为服务器。

Snipaste_2021-02-09_00-42-05.jpg

相关路径设置如下。

Snipaste_2021-02-09_00-42-47.jpg

如果启动容器需要用gpu,要加如下参数

Snipaste_2021-02-09_00-43-05.jpg

最终配置完成后的效果图如下。

Snipaste_2021-02-09_00-43-19.jpg

6、运行脚本

Snipaste_2021-02-09_00-44-27.jpg

到此这个hello_world.py 脚本就可以用远程docker容器里的python解释器了

此处与应用本地解释器不同的是,每一个项目下脚本运行都需要,去单独配置脚本运行

引用:

https://my.oschina.net/u/4395108/blog/3317513

知乎地址:

https://zhuanlan.zhihu.com/p/350093679

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值