远程运行 Python 代码,PyCharm 连接服务器指南

1,170 阅读4分钟

这是我参与2022首次更文挑战的第24天,活动详情查看:2022首次更文挑战

引言

用于科学计算(如深度学习)的程序往往需要在性能更强大的服务器上运行,但 Linux 终端的编码体验不如现代的图形界面编辑器。PyCharm 支持本地与远程服务器的连接,可以直接进行本地与服务器之间的代码同步,并利用服务器的 Python 环境运行代码。本文介绍了 PyCharm Professional 连接远程服务器的步骤,希望对你有所帮助。

1. 仅 PyCharm Professional 支持连接远程服务器。
2. PyCharm Professional 可以在 JetBrains 官网通过学生邮箱(或者学信网学籍证明)申请学生认证免费下载。
3. 我的 PyCharm 安装了中文插件,因此下文全部使用中文界面的 PyCharm 进行介绍。
4. 中文插件:Chinese (Simplified Language Pack / 中文语言包
5. PyCharm 外观主题插件:Palenight

编辑器配置

首先在设置中找到部署,然后新建一个SFTP,输入服务器名称(自己起名),确定。

image.png

然后在弹出的配置界面中点击 SSH 配置右边的三个点(详情),在弹出的界面中新建一个 SSH 配置。分别输入主机的 ip 地址、端口号、用户名以及密码,这里我用的密钥。填完之后测试连接,成功连接即可。点击右下角应用完成设置。

image.png

回到刚才的界面(上图左),在 SSH 配置中选择刚刚新建的配置。

根路径是你想把你的项目部署在服务器的哪个目录下,之后部署项目的时候将会自动以这个路径为根路径。

设置完成之后点击应用。

项目配置

刚刚完成的编辑器配置是把服务器保存到 PyCharm 中,以后每个项目都可以直接使用该配置。但是对于每个项目而言,还需要进行单独的部署。

打开项目之后,点击上方菜单栏的工具部署配置

这里顺便把自动上传(始终)也勾选上,这样每当对代码做出编辑的时候都会自动同步到服务器。

image.png

弹出来的配置窗口中可以看到刚刚添加的 SSH 配置已经默认使用。把仅对此项目可见取消勾选。

image.png

点击窗口上方的映射,设置本地路径与服务器路径之间的映射关系。这个设置的意思是把本地路径下的所有文件直接映射到服务器的根路径+部署路径下,这里就用到了刚才设置的根路径。以我这个为例,根路径设置为/data2/yzh,部署路径为/FashionMMT,就把本地的D:\Desktop\Fashion-MMT文件夹与服务器端的/data2/yzh/FashionMMT文件夹同步起来了。

image.png

设置完成后,如果开了自动上传,就可以看到 PyCharm 已经在把本地的文件往服务器里上传了。

当然,也可以手动同步,以下两种方式均可。

image.png

环境配置

最后,需要配置一下远程运行环境。经过前面的操作,已经把本地项目部署到服务器,但是并没有指定在远程服务器环境中运行程序。

点击右下角解释器设置,添加解释器,在弹出的配置窗口的左侧点击SSH 解释器,选择刚才新建的服务器配置。

image.png

然后点击下一个,在弹出的窗口中选择服务器中的 Python 解释器路径,我的是/root/anaconda3/envs/d2l/bin/python,可以参考。

然后这里又让设置同步文件夹,我不是特别清楚,反正就是把目标文件夹改成你想设置的服务器中的项目路径就对了。

image.png

设置完成之后,就已经全部配置成功啦。

这时候再进入部署设置,会发现自动生成了一个 SSH 配置,而且自动设置成了默认配置,就是最终要用的那个配置了。这里我也不是很理解,可能我前面走了弯路,导致什么东西重复设置了。不过我一直就是这样配置的,能用就行啦。

image.png

结语

上面这三步中,编辑器配置环境配置只需要设置一次,新项目部署到服务器只需要进行项目配置,然后把解释器切换成之前配置好的远程解释器就行了。

以上就是 PyCharm Professional 连接服务器的操作步骤了,我记得不是特别清楚,我自己删除配置重复了一遍,应该是这样的。如果有什么问题请麻烦在评论区反馈一下,我及时勘误,特别感谢!


相关推荐:

毛坯服务器拓荒:从零开始配置 Linux 深度学习环境 - 掘金 (juejin.cn)
Ubuntu 版本升级指南(SSH 方式,16.04 → 18.04) - 掘金 (juejin.cn)