实验室的电脑性能不行了,所以想着租一台服务器,然后还想使用PyCharm在本地编程,因此就查找相关资料,这里记录一下配置过程,方便以后查阅。
PyCharm 连接 AutoDL 远程服务器
- PyCharm 连接服务器
- 上传数据集到服务器
- 运行代码
- PyCharm 运行 .ipynb 代码
- PyCharm 运行 .py 代码
- 服务器中GPU不足
PyCharm 连接服务器
租用服务器成功后,可以在【控制台】查看容器实例,此时界面显示的就是我们租用的服务器信息。
在 File - Settings - Project 中打开 Python Interpreter 进行配置,点击 Add Interpreter 后选择 SSH 。
假设我们租用的服务器的登陆指令为 ssh -p 25628 root@connect.nmb2.seetacloud.com
- Host = connect.nmb2.seetacloud.com
- Port = 25628
- Username = root
如果出现如下的内容,则关掉此次添加工作
WIN+R然后输入cmd进入电脑的终端
输入指令
ssh -o StrictHostKeyChecking=no Username@Host -p Port
以上面的服务器登录指令为例:
ssh -o StrictHostKeyChecking=no root@connect.nmb2.seetacloud.com -p 25628
然后重复Add Interpreter操作,到下面这一步,输入【控制台】中的密码
点击Next
此处可以选择新建一个虚拟环境,也可以选择使用服务器中已经建好的环境。由于服务器在创建的时候已经加载了需要的镜像,因此此时服务器中已经存在了需要的环境,所以这里选择了现有的环境。
点击上图中第四个框中的文件夹标志,设置代码上传的地址。此处的功能就是将设置本地的代码上传的服务器中的什么地方。
上图中的最后一个对号需要勾上,这是自动上传代码的选项。然后点击创建即可完成环境的创建。可以看到新环境中已经安装的包。
如果出现如下错误,则关掉PyCharm重新操作一下上面的步骤(我是这么操作的)就可以了
我们可以在右侧边栏处找到 Remote Host 模块,来查看服务器中的文件。
如果没有的话,可以在 Tools - Deployment - Browse Remote Host 处找到这个模块,并将其添加到右侧边栏,具体操作如下图所示。
通常 PyCharm 中的项目文件会自动上传到服务器中,如果没有自动上传的话,可以参考下面截图中的操作,首先右键点击项目的总文件夹,然后点击 Deployment - Upload 。
上传数据集到服务器
下载 FileZilla 安装包,并安装
安装完成后界面如下所示
然后连接服务器
将想要上传的数据集拖到要上传的地方,等待传输完成即可
运行代码
PyCharm 运行 .ipynb 代码
在运行ipynb代码时会出现如下的错误
从日志看,JupyterLab 已经正确加载,但是启动失败。也就是 你用 root 用户启动 JupyterLab,但没有加 --allow-root。
在服务器的终端执行这两句指令:
echo "c.ServerApp.allow_root = True" >> ~/.jupyter/jupyter_notebook_config.py
echo "c.ServerApp.port_retries = 0" >> ~/.jupyter/jupyter_notebook_config.py
即可正常运行 .ipynb 代码
PyCharm 运行 .py 代码
服务器中GPU不足
在租服务器的时候选择的是按流量计费,因此会遇到当前组的服务器实例GPU数量不够的情况,此时可以选择克隆实例来解决。
可以选择一个GPU数量充足的主机来创建一个新的实例。
由于我们两个实例中的环境都一样的,在PyCharm中的环境名也是一样的,这样我们在使用的时候就不能明确的知道应该选择哪个环境,因此,我们可是使用实例的端口号来对环境记性重新命名。