本篇文章解决的问题:
本地pycharm 与云服务器/实验室服务器进行远程连接跑实验训练、同步本地与云服务器的全部或者部分文件。
在这之前需要做的的工作:
1.服务器上已经创建好虚拟环境(不会的可以看下篇文章):使用云GPU进行yolov5的训练_gpu训练云服务器_耿鬼喝椰汁的博客-CSDN博客
2.你本地已经安装好pycharm(要专业版Pycharm才支持远程连接)
目录
一、建立远程服务器连接
1.检查自己Pycharm是否为专业版
2.服务器上已经创建好虚拟环境
3.开始创建远程连接
(1)配置远程环境
(2)建立ssh连接
(3)配置SSH连接
4.进行本地项目与远程项目之间的文夹路径映射
5.设置自动上传项目
6.验证是否连接成功
二、本地配置Python解释器
三、本地启动服务器终端
四、注意
一、建立远程服务器连接
1.检查自己Pycharm是否为专业版
Pycharm分为专业版和社区版,只有专业版才支持远程服务,所以大家可以先确认自己的Pycharm版本,可通过下图所示操作查看自己的版本(工具栏help(帮助)->about(关于)):
2.服务器上已经创建好虚拟环境
详情会可看下列文章:
(2条消息) 使用云GPU进行yolov5的训练_gpu训练云服务器_耿鬼喝椰汁的博客-CSDN博客使用云GPU进行yolov5的训练_gpu训练云服务器_耿鬼喝椰汁的博客-CSDN博客(2条消息) 使用云GPU进行yolov5的训练_gpu训练云服务器_耿鬼喝椰汁的博客-CSDN博客
检查版本无误且创建好虚拟环境后开始进行本地与远程服务器之间的连接配置:
3.开始创建远程连接
第一步工作是建立本地与远程服务器之间的SSH连接,我们知道远程服务器上创建的实例拥有自己的SSH以及用户名,用户名通常为root,SSH由ip:port两部分组成,ip为服务器ip地址,port为端口号,这些信息在第2步创建虚拟环境时获得,我们需要获取这个SSH连接后续配置需要使用:
(1)配置远程环境
点击菜单栏中的Tools(工具)→Deployment(部署)→Cinfiguration(配置)即可进入Deployment对话框。(因为我的Pycharm汉化了,所以图片是中文显示)
(2)建立ssh连接
在Deployment对话框先点击加号创建一个远程访问服务,选择SFTP协议点击OK进行创建
设置服务器名(这个可以随意命名,最好根据自己项目来写名称)
(3)配置SSH连接
点击SSH配置右侧的"…",进行SSH内容设置(设置远程连接的主机地址、端口、用户名和密码等信息。):
此处我们需要设置三个参数:Host为前面提到的远程服务器ip地址xxx.xxx.xxx.xxx;Port为SSH连接后的端口号;User name为远程服务器用户名,通常为root
填写设置完毕之后可以点击Test Connection测试以下连接。若成功会出现下图所示结果:
出现提示框就是连接成功了!然后点击SSH Configurations对话框下的OK返回Deloyment对话框。
接下来为了后续本地与服务器之间同一项目可以内容同步,我们还需要设置二者之间的项目路径映射。
4.进行本地项目与远程项目之间的文夹路径映射
为了后续本地与服务器之间同一项目可以内容同步,我们还需要设置二者之间的项目路径映射,即本地项目在远程服务器中存放的位置。
在Deloyment对话框中选择Mappings设置路径映射,设置本地代码同步到云服务器的目标路径,设置完成点击OK退出,这里使用的云服务器为恒源云,服务器部署路径为:/hy-tmp,图中未显示。
5.设置自动上传项目
在连接建立并配置好本地与远程项目之间的路径映射后,我们再设置自动上传项目即可,在菜单中点击Tools(工具)→Deployment(部署),勾选Automatic Upload (always)【自动上传(始终)】,确保Python代码可以自动同步到云服务器。
如此本地与服务器之间就可以进行项目同步了,此时我们更新了本地代码之后只要使用快捷键(我这里是A)保存代码即可完成同步:
此处需要注意如果自动上传无法成功,我们可以手动将本地项目上传到服务器(选择上面的Upload to(上传到)即可),一定要在本地代码更改后及时上传同步到服务器!!反之,如果服务器对代码进行了修改,则通过本地的Download from(从...下载)拉取服务器中的代码同步本地。
注意:
upload to ...顾名思义改完代码以后更新服务器代码。
download from从服务器下载代码到本地。
这里我们从服务器下载下来数据。选择download from
他会问你从哪里下载,选定你的服务器。之后等待下载完毕即可。
但是要注意,每次修改代码以后都要在项目那里upload to...才会更新服务器代码。
6.验证是否连接成功
在进行SSH连接建立之后,通过下图所示方法可验证是否连接成功:
如下图所示,点击浏览远程主机之后可在本地Pycharm右侧看到远程服务器的文件目录,此时可看到与远程服务器的文件目录一模一样
二、本地配置Python解释器
此时我们还不能在本地使用服务器的环境,我们需要将本地Pycharm的Python解释器设置为远程服务器中的指定环境下的Python解释器:
(1)进入设置,将服务器中的Python解释器添加到Pycharm中:
(2)选择SSH解释器,选择SSH配置,选中前面设置的服务器连接,然后选择ssh配置即可:
(3)这里需要设置远程服务器中的Python解释器路径和项目之间的路径映射,如下图所示:
到此处我们的环境配置工作就完成了!!
之后我们将所需要的文件上传到服务器就可以在远程服务器使用yolov5模型进行数据集的训练了,如果调整了训练参数记得upload to!
三、本地启动服务器终端
现在我们可以在本地使用服务器的工作环境了,那如何在本地开启服务器终端呢,毕竟后面需要其他第三方库还得装包(比如yolov5需要运行requirements.txt),这里我也说一下:
工具栏中打开Tools(工具)->Start SSH Session(启动ssh会话),然后选择我们前面配置的服务器,即可在本地Terminal处开启远程终端:
四、注意
后面如果要切换回本地工作环境,直接去设置里面切换Python解释器即可!!!
这篇远程服务器连接本地Pycharm运行yolov5模型教程到这里就结束啦,如果有什么问题可以在评论区留言呀~
如果帮助到大家,可以一键三连+关注支持下~