Pycharm远程连接服务器配置详解

背景:

相信很多人都遇到了这种情况,日常的开发和程序的验证都需要在linux环境下验证,而我们都是使用本地windows来进行开发或者脚本的编写,然后再push到远程仓库,再到linux环境下pull下来代码验证,这样每次的push–>pull很麻烦,也影响脚本或者程序的debug的进度,这里我也是百度了很多了解了PyCharm Professional版支持Remote Development,这意味着你可以在本地机器上编写代码,而代码实际上在远程服务器上运行。下面是如何通过Remote Development(远程开发)功能连接到远程SSH服务器的步骤。

1 先决条件

确保你有PyCharm Professional版(我这里是自己破解的专业版,大家可自行破解哈)。
确保你的Linux服务器和Windows客户端都有可用的网络连接并且SSH服务在Linux服务器上已经启动。
确保你的Linux服务器上已经安装了Python和PyCharm所需要的其他依赖
在这里插入图片描述

2 先配置免密登录

在Windows机器上生成SSH密钥对 在Windows上,你可以通过Git Bash、Cygwin、Windows Subsystem for Linux (WSL)或其他工具使用ssh-keygen命令生成密钥对。如果这些工具都不可用,还可以使用PuTTYgen生成密钥。
以下示例是使用ssh-keygen(通常是在Git Bash或WSL中)生成密钥对的步骤:

2.1 windows本地生成公钥和私钥

 ssh-keygen -t rsa

在这里插入图片描述

上面一路回车,以及按 ‘y’ 即可生成,生成的公钥和私钥的路径也会有显示
C:\Users\issuser/.ssh/id_rsa.pub

2.2 传输公钥到Linux服务器上

将公钥上传至Linux服务器 你需要将生成的公钥(id_rsa.pub)内容添加到Linux服务器上用户的~/.ssh/authorized_keys文件中。可以手动编辑此文件,也可以使用ssh-copy-id工具,如果你的环境不支持ssh-copy-id,也可以执行如下命令,先cat 公钥的信息:

cat C:\Users\issuser/.ssh/id_rsa.pub

2.3 复制显示的内容到剪贴板,这个公钥内容如下图显示:

在这里插入图片描述

2.4 然后,登录到你的Linux服务器:

一旦登录到Linux服务器后,你需要将公钥添加到/.ssh/authorized_keys文件中。如果/.ssh目录或authorized_keys文件不存在,你需要先创建它们:

mkdir -p ~/.ssh
touch ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

2.5 接下来,编辑authorized_keys文件并将你的公钥粘贴进去。你可以使用任何文本编辑器,例如nano或vim,或者使用下面的命令:

echo ‘你的公钥内容’ >> ~/.ssh/authorized_keys
在这里插入图片描述

2.6 验证是否可免密登录

首先在windows powershell 或者cmd窗口都可以,通过ssh -i参数使用windows的私钥来进行登录,如下图显示即是配置免密成功

ssh -i C:\Users\issuser/.ssh/id_rsa user@your-linux-server-address

在这里插入图片描述

3 pycharm创建SSH配置

点击pycharm file-setting-Tools-SSH Configurations,如下图所示,点击添加ssh连接
在这里插入图片描述

4.添加连接

如下图所示,这里的host就是你服务器的IP地址,Username为服务器的登录名一般为root,Authentication type为Key pair(上面步骤我们已经配置好了免密登录所有用这个,也可以用password)
在这里插入图片描述

5 测试连接

配置好以后点击Test Connection提示连接成功即可
在这里插入图片描述

6 启动远程IDE

上面的步骤点击OK之后,即可进入启动界面,这里点击Check Connection and Contiune
在这里插入图片描述
如下我们选择我们的远程服务器的代码路径即可
在这里插入图片描述
启动之后会看到windows本地显示了一个远程的Pycharm的界面,至此你可以在这个远程上面开发你的代码,右键代码运行相当于就是在服务器上运行啦。
在这里插入图片描述

6 后续启动

点击File-Remote Development-SSH
在这里插入图片描述
这里会显示我们刚刚添加的服务器,点击服务器名即可启动IDE
在这里插入图片描述

总结:

以上是本地windows和服务器是在一个局域网的情况下的连接,可以使用这种方式来实现远程开发。那如果服务器和本地windows不在一个局域网内呢?往往我们需要通过跳板机来实现访问了,这里我们也可以通过配置代理的方式来实现上面的远程开发,后续我也会出如何通过代理的方式来实现配置,如果大家觉得对自己有帮助的,可以点个赞哈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/535427.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

算法与程序设计(实验2)----分治法求最近点对问题

一.实验目的 掌握分治法思想。学会最近点对问题求解方法。 二、实验内容 1. 对于平面上给定的N个点,给出具有最短距离的两点。 2. 要求随机生成N个点的平面坐标,应用蛮力法编程计算出所有点对的最短距离。 3. 要求随机生成N个点的平面坐…

Gateway的简单介绍和使用

1、Gateway简介: Gateway 是一种 API 网关(API Gateway)技术,它作为微服务架构中的关键组件,负责为系统的外部请求与内部服务之间提供统一的接入点。Spring Cloud Gateway 是基于 Spring 生态系统实现的一个高性能、易…

基于SpringBoot+Vue的古风生活体验交流网站(源码+文档+部署+讲解)

一.系统概述 二十一世纪我们的社会进入了信息时代,信息管理系统的建立,大大提高了人们信息化水平。传统的管理方式对时间、地点的限制太多,而在线管理系统刚好能满足这些需求,在线管理系统突破了传统管理方式的局限性。于是本文针…

天工 AI 爆赞的数据分析能力

分享一个 AI 应用。 天工 AI 天工AI - 首页 (tiangong.cn) 可以上传数据,给出数据分析命令,并能出图。 数据分析师岌岌可危。 又知道其他好用的数据分析应用么,可以告诉我下。

MobX 中 runInAction 的威力:构建原子性状态更新

"原子性状态更新"这个词可以很好地概括 runInAction 的核心功能,即将一组相关的状态更新作为一个整体,要么全部成功,要么全部失败。这种特性对于复杂的异步操作和状态管理非常重要。可以帮助我们构建更加可靠和可预测的 React 应用程序。 怎么理解原子性操作 "…

为什么忘记密码要重置密码而不是直接告诉你密码?

上一篇博客:LeetCode 2529. 正整数和负整数的最大计数 写在前面:大家好!我是晴空๓。如果博客中有不足或者的错误的地方欢迎在评论区或者私信我指正,感谢大家的不吝赐教。我的唯一博客更新地址是:https://ac-fun.blog.…

Tensorflow(GPU版本配置)一步到位!!!

Tensorflow(GPU版本配置)一步到位!!! CUDA安装CUDA配置Tensorflow配置常见的包 CUDA安装 配置了N次的Tensorflow–Gpu版本,完成了踩坑,这里以配置Tensorflow_gpu 2.6.0为例子进行安装 以下为ten…

React + three.js 3D模型面部表情控制

系列文章目录 React 使用 three.js 加载 gltf 3D模型 | three.js 入门React three.js 3D模型骨骼绑定React three.js 3D模型面部表情控制 示例项目(github):https://github.com/couchette/simple-react-three-facial-expression-demo 示例项目(gitcode)&#xff…

Linux网络名称空间和cgroup的关系

在Linux系统中,网络名称空间(Network Namespaces)和控制组(cgroups)是两种重要的资源管理和隔离技术。虽然它们在功能和应用场景上有所不同,但二者共同为Linux容器技术,如Docker和Kubernetes&am…

编程规范(保姆级教程)

文章目录 为什么需要编程规范?💡代码检测工具 ESLint💡代码格式化 Prettier💡ESLint 与 Prettier 配合解决代码格式问题eslint支持ts约定式提交规范Commitizen助你规范化提交代码什么是 Git Hooks使用 husky commitlint 检查提交…

wsl初步使用记录

wsl介绍 WSL是windows平台下Linux环境的子系统(Windows Subsyetem for Linux),可以让Windows下方便的安装Linux系统,而无需安装其他虚拟机软件。 wsl使用 Windows操作系统支持 Windows 10 版本 2004 及更高版本(内…

OpenHarmony南向开发案例:【智能保险柜】

样例简介 智能保险柜实时监测保险柜中振动传感器,当有振动产生时及时向用户发出警报。在连接网络后,配合数字管家应用,用户可以远程接收智能保险柜的报警信息。后续可扩展摄像头等设备,实现对危险及时报警,及时处理&a…

缝合的作品(并查集/逆序)

、思路:首先是并查集来做,首先给给每个单词一个id,然后把它放到ans[i]处。 对于操作1:把a单词换为单词b,就相当于a、b两个集合结合。然后再给a单词赋一个新的id,用来进行操作2,因为之后的操作2…

HarmonyOS实战开发-证书管理、如何实现对签名数据进行校验功能。

介绍 本示例使用了ohos.security.certManager相关接口实现了对签名数据进行校验的功能。 实现场景如下: 1)使用正确的原始数据和签名数据进行签名校验场景:模拟服务端对签名数据进行校验,验证客户端身份和原始数据完整性。 2&…

车载摄像头图像及画质增强解决方案

车载摄像头作为汽车智能化、安全化的关键组件,其图像质量直接影响着驾驶者的视觉感知和行车安全。美摄科技凭借其在图像处理和AI算法领域的深厚积累,推出了一款专为车载摄像头打造的图像及画质增强解决方案,助力企业实现摄像头画面的实时优化…

基于“遥感+”蓝碳储量估算、红树林信息提取实践技术应用与科研论文写作

大气温室气体浓度不断增加,导致气候变暖加剧,随之会引发一系列气象、生态和环境灾害。如何降低温室气体浓度和应对气候变化已成为全球关注的焦点。海洋是地球上最大的“碳库”,“蓝碳”即海洋活动以及海洋生物(特别是红树林、盐沼和海草&…

电商技术揭秘十九:电商平台的智能化与自动化技术

相关系列文章 电商技术揭秘一:电商架构设计与核心技术 电商技术揭秘二:电商平台推荐系统的实现与优化 电商技术揭秘三:电商平台的支付与结算系统 电商技术揭秘四:电商平台的物流管理系统 电商技术揭秘五:电商平台…

✔ ★Java项目——设计一个消息队列(二)

Java项目——设计一个消息队列 四. 项⽬创建五. 创建核⼼类创建 Exchange(名字、类型、持久化)创建 MSGQueue(名字、持久化、独占标识)创建 Binding(交换机名字、队列名字、bindingKey用于与routingKey匹配&#xff09…

WPS的JS宏如何批量实现文字的超链接

表格中需要对文字进行超链接,每个链接指引到不同的地址。例如: 实现如下表格中,文件名称超级链接到对应的文件路径上,点击对应的文件名称,即可打开对应的文件。 序号文件名称文件路径1变更申请与处理表.xls文档\系统…

HTTPS证书是什么?申请方法是什么?

HTTPS证书是互联网上由权威证书颁发机构(CA)签发的数字文件,用于证明网站的身份,并通过其中包含的公钥为网站启用HTTPS加密连接,确保用户与网站间的通信数据安全且不可被第三方窃取或篡改。 怎么申请? 一&…