客服

PyCharm 使用矩池云机器教程

如何使用 PyCharm 远程连接矩池云主机

如果您使用 PyCharm、VSCode 等 IDE 工具进行编程,可以通过 SSH 功能,远程使用矩池云的开发环境,为您提供更快更便捷的 GPU 服务哦。
本教程将以 PyCharm 为例,向您讲解如何使用矩池云机器环境。

使用前必读

  • 请确保您的 Pycharm 为有 SSH 远程功能的专业版。社区版无远程功能。
  • Pycharm 只适合于调试代码。若要进行长时间的训练,请使用 SSH,配合 tmuxnohup命令进行,否则训练可能因网络问题或您自行关闭 Pycharm 而中断。
  • Pycharm 不适合进行数据集的传输。选择项目时,建议只同步要调试的脚本,不要同步数据集。
  • 请您注意,PyCharm 为 Jetbrains 开发的工具,矩池云仅提供接入矩池云的使用教程,IDE 本身的使用问题请联系 PyCharm 官方。
本教程中使用的为 PyCharm 2019.3.1(Professional Edition) 版。
PyCharm
首先,您需要租用一台矩池云的 GPU。
矩池云租用教程请移步 矩池云租用教程
矩池云提供网盘存储服务,您可先将数据集和脚本文件打包上传至网盘,提高上传速度,还能节省费用。
在租用了矩池云 GPU 机器后,您需要在 PyCharm 环境中进行配置以使用矩池云 GPU。
具体操作请参考:自行设置远程链接

新建 PyCharm 项目

如果您已经有本地项目,请先将数据集通过网盘上传至矩池云,在打开的本地项目中仅保留要调试的脚本即可。
例如您的项目为 Dogs_and_cats,项目下有一个 datasets 的数据集目录,和一个 code 的脚本目录。那么打开项目时,仅选择 code 目录即可。datasets 请通过网盘上传。
打开 PyCharm ,新建一个 Python 项目。
新建项目
点击 Create ,创建项目。
创建成功
在项目文件夹上点击右键,新建一个 Python 文件。
新建文件
给 Python 文件起一个名字,例如 test,回车。
命名
在文件中,打一个简单的命令。
python
print("Hello world!")
Hello World!
至此,我们创建了一个简单项目。

自行设置远程连接

1. 设置 Python 解释器

Windows 系统,点击右上角 File - Setting。
Setting
如果是 Mac 系统,点击 Pycharm - Preferences。
Preferences
由于 Pycharm 2022 版本添加远程解释器方法和之前版本不一样,所以后面分为两种添加方法。
如果您是 Pycharm 2022 以下版本,可以点击这里直达 Pycharm2022 以下版本解释器添加教程
如果您是 Pycharm 2022 及以上版本直接看下方教程即可。

1.1 Pycharm 2022 版本

如果您是 Pycharm2022 或者更高版本,操作方法如下,点击 Project - Project Interpreter 展开,点击 Add Interpreter->On SSH添加新的远程解释器。
add-python-interpreter
首先输入租用机器的:Host、Port、Username(租用界面点击 Pycharm 可以看到相关值)。
HOST(主机名):hz.matpool.com 或 hz-t2.matpool.com,请以您 SSH 中给定的域名为准
Port(端口):矩池云租用记录里 SSH 连接里 -p 后的几位数字,例如 42799,通常是五位数
Username(用户名):root
set-host
然后依次点击Next即可,在选择解释器界面选择System Interpreter,Interpreter 框写自己租用机器的 Python 解释器,系统默认解释器路径是:
/root/miniconda3/envs/myconda/bin/python
如果您有自己 conda 新建环境,改成自己对应环境路径即可。
请注意,您还需要修改下面的文件夹路径。PyCharm 的默认路径是 /tmp/PyCharm_project_***,矩池云建议您将其修改到 /mnt 目录下。
set-python-interpreter
都修改好后点击Create即可完成远程解释器添加,在下图界面点击Apply开始同步。
python-interpreter

1.2 Pycharm 2022 以下版本

如果您是 Pycharm2022 以下版本,点击 Project - Project Interpreter 展开,点击后面的设置按钮,选 Add,添加新的 Python 解释器。
Add
在新打开的窗口中,选择 SSH Interpreter。若 PyCharm 版本不一致,需要您选择协议的,请选 SSH 协议。
填写配置信息
这里需要填写您租用 GPU 机器的 HOST、端口号和用户名。
HOST(主机名):hz.matpool.com 或 hz-t2.matpool.com,请以您 SSH 中给定的域名为准
Port(端口):矩池云租用记录里 SSH 连接里 -p 后的几位数字,例如 42799,通常是五位数
Username(用户名):root
点击 Next 进入下一步,会有一个远程连接提示,点击 Yes。
远程连接提示
下一步进行授权。在 Password 中填写租用时自定义服务器密码。
输入密码
下一步填写远程解释器的路径,
/root/miniconda3/envs/myconda/bin/python
若您选择的是 Python2.7_多框架,则镜像路径是:/root/anaconda3/envs/myconda/bin/python
请注意,您还需要修改下面的文件夹路径。PyCharm 的默认路径是 /tmp/PyCharm_project_***,矩池云建议您将其修改到 /mnt 目录下。
因为 /mnt 是默认的网盘挂载目录,网盘不会随着机器释放而清空,可长期保存。
修改存储路径
点击文件夹按钮,可修改远程同步文件夹路径。在弹出的窗口中,您可以直接输入,将 Remote Path 修改为 /mnt/PyCharm_Project_1
也可以点击右侧文件夹按钮,手动选择文件夹。该列表为矩池云 GPU 机器上的文件目录,建议您选择 /mnt
选文件夹
点击 OK ,回到解释器修改页面。点击 Finish 。添加完成后点击 OK 保存。
OK

2. 运行代码

配置后,Pycharm 还会自动同步一些工具到远程服务器,会需要一段时间,请耐心等待。
检查远程工具
如果在同步完成之前运行文件,可能会运行出错。您可以点击 Pycharm 底部查看报错原因。
运行出错
右键文件名,待同步完成后,可以点击 Run 运行该文件。
运行文件
在下方可以看到运行后的结果。
运行结果
如果您发现文件没有上传,可能是因为页面太久没有操作了,此时可以选择 Tools - Deployment - Upload to,手动同步文件。
如果您遇到了 Checking Remote Helpers 的报错,
Checking Remote Helpers
或者在运行时,提示里使用了 pydevconsole,是因为 helpers 没有同步完成报错,
pydevconsole
可以点击右上角的运行文件名,右键打开 Edit Configurations,
null
将 Run with Python Console 的勾取消,重新运行即可。
null

3. 安装其他 Python 包

在Pycharm连接好服务器,运行代码的时候发现缺包怎么安装?
  • 首先我们需要确认好选的 Python 解释器没有问题,如果你用系统默认环境,解释器应该是:/root/miniconda3/envs/myconda/bin/python,如果你有自己配置的环境,请在连接服务器的时候选对应的解释器。
  • Pycharm 中点击 tool -> start ssh session,连接后,在 Terminal 中直接pip install 包名即可,另外如果远程环境安装了,Pycharm还是有红色波浪线提示没有安装,可以不用管,直接运行代码就行(有可能是 Pycharm 还在同步映射远程解释器新增的包)。

4. 文件同步配置

一般配置好Python 解释器,会自动设置好文件同步配置,如果没有,您可以点击 Tools-Deployment-Configuration 进行设置。
选择Configuration
修改 HOST 和 PORT 为您租用机器的主机名和端口号即可。Root Path 保持为空即可,不要自动填充,可能会导致同步路径出错。
修改主机名端口
为了避免混淆,您可修改该链接名称为矩池云,以便下次使用。右键点击左侧列表中的 hz.matpool.com,选择 rename,重命名为矩池云。
重命名

5. 上传/下载文件

默认情况下,Pycharm 会自动同步本地打开项目下所有文件到远程服务器中,可以在下方的 File Transfer 中看到,文件已经同步到了服务器目录下。
传输成功
如果没有自动同步,您也可以手动进行同步,选中需要同步的文件,右键 - Deployment - Upload to xxx 即可,同样,当远程文件修改或者生成新文件/结果时,我们也可以选择文件夹,右键 - Deployment - Download from xxx 将远程内容同步到本地。
upload_to_matpool
同步以后,文件传输 Tab 会提示,文件已经传输完成。

使用远程终端

若您想要在 PyCharm 中远程执行 bash 命令,可通过 PyCharm 的 Terminal 工具进行操作。
Terminal 默认连接本地,您可以点击 Tools - Start SSH session ,连接远程服务器。
Start SSH session
点击后会出现一个小框,选择 matpool.com 的远程服务。
选择远程服务器
选择后,PyCharm 下方会新创建一个与矩池云机器连接的 Terminal,您可在该 Terminal 中运行 bash 命令。
打开 Terminal
如果想要运行文件的,请确认您同步的时候选择的同步目录,需要进入到该目录执行。
选文件夹
在上面这个例子中,选择了远程同步目录为 /mnt/pycharm_project_1,则您要想运行文件时,请先用命令 cd /mnt/pycharm_project_1 进入目录,再使用 python XX.py 命令运行脚本。

使用 Jupyter 工具

注意: 本操作以 Pycharm Professional 2021.3 为例。
若您的文件为 ipynb 格式文件,则在 2021.3 下,Pycharm 会自动以 Jupyter 样式打开。
但是此时尚未配置 Jupyter Server,还不能运行。需要先进行配置。
Jupyter样式
进入矩池云租用列表,复制您的机器的 Jupyter 链接。
复制 Jupyter 链接
点击此处 Configure Jupyter Server,打开配置窗口。
配置 Jupyter Server
点击第二个 Configured Server。然后将刚刚复制的 Jupyter 链接填入这里。
添加配置
填写完成后,先点击右下角 Apply,然后再点击 OK。此时配置成功。
配置成功
回到 ipynb 文件的页面,右上角已经显示了我们刚刚配置的 Jupyter Server。此时点击 Jupyter 的 Run 或者 Run All 按钮,可以运行。
Run
注意:
  • 点击 Restart Kernel 按钮后可能导致报错,重启 Pycharm 可以解决此 BUG。
Restart 报错
  • Pycharm 的远程 Jupyter 暂不支持 Debug。
Debug is unavailable for remote jupyter server
如遇问题请及时联系客服处理。