首页 > 编程语言 >使用跳板机在 PyCharm 中配置远程服务器的 Python 环境

使用跳板机在 PyCharm 中配置远程服务器的 Python 环境

时间:2024-10-24 14:47:41浏览次数:7  
标签:跳板 机在 gadi Python SSH 服务器 PyCharm

使用跳板机在 PyCharm 中配置远程服务器的 Python 环境

在需要通过跳板机连接到远程服务器时,PyCharm 提供了一些内置的方式,可以让你通过中间服务器访问远程机器上的 Python 解释器。本指南将介绍如何使用 PyCharm 通过跳板机连接,并在远程服务器上运行 Python。


前提条件

  • PyCharm Professional 版本。
  • 能够通过跳板机(Bastion host)访问远程服务器。
  • 远程服务器上已安装 Python。
  • 跳板机和目标服务器上的 SSH 访问已配置好(包括密钥或密码认证)。

配置步骤

1. 准备 SSH 访问(通过跳板机)

首先,确保你可以通过命令行手动通过跳板机连接到目标服务器。在本地终端中运行以下命令测试:

ssh -f -N -L 本地端口号:bastion_host:服务器端口号 user@target_server

例如:

ssh -f -N -L 1419:gadi-cpu-bdw-00.gadi.nci.org.au:22 [email protected]

这个命令使用 SSH 隧道(SSH tunneling) 将本地端口与远程服务器上的端口连接起来。

  • ssh :启动 SSH 客户端,用来与远程服务器建立安全连接。
  • -f :让 SSH 在后台运行。这意味着 SSH 会在隧道建立后转为后台运行,而你可以在终端中继续其他操作。
  • -N :告诉 SSH 不要在远程服务器上执行任何命令。通常用于端口转发场景,只负责建立隧道,而不执行远程命令。
  • -L 1419:gadi-cpu-bdw-00.gadi.nci.org.au:22 :这是 本地端口转发 的配置,具体解释如下:
    • 1419 :这是 本地机器 上的端口号。任何连接到本地机器的 localhost:1419 的流量都会通过 SSH 隧道转发。
    • gadi-cpu-bdw-00.gadi.nci.org.au:22 :这是 远程服务器(gadi-cpu-bdw-00.gadi.nci.org.au) 的地址和端口号。该服务器的 SSH 端口是 22,因此通过本地 1419 端口的所有流量都会转发到 gadi-cpu-bdw-00.gadi.nci.org.au22 端口。
  • [email protected] :这是你连接 跳板机 的 SSH 用户名和地址。你会先通过 SSH 登录到 gadi.nci.org.au(跳板机),再通过隧道转发的方式连接到远程服务器 gadi-cpu-bdw-00.gadi.nci.org.au

2. 编辑 SSH 配置文件 (可选)

为了简化使用跳板机的连接配置,建议在 SSH 配置文件中配置跳板机。编辑或创建 ~/.ssh/config 文件,并添加如下内容:

Host Gadi
HostName gadi-cpu-bdw-00.gadi.nci.org.au
User xp
ProxyJump [email protected]  # 配置跳板机
ForwardX11 yes
ForwardX11Trusted yes

这样,你就可以通过 ssh Gadi 命令直接通过跳板机连接目标服务器。

3. 打开 PyCharm 设置

  1. 在 PyCharm 中,点击左上角的 File ,然后选择 Settings (对于 macOS 用户,选择 PyCharm > Preferences )。
  2. 在设置窗口中,选择 Project: <your_project_name> > Python Interpreter

4. 添加 SSH 解释器

  1. 点击 Python Interpreter 右侧的 齿轮图标 ,然后选择 Add Interpreter
  2. 在弹出的窗口中,选择 SSH Interpreter ,然后点击 Next

5. 配置跳板机连接

  • Host :输入 localhost,因为 SSH 隧道将本地端口 1419 映射到了远程服务器。
  • Port :使用 1419,这是你为 SSH 隧道指定的本地端口。
  • Username :输入 xp,这是你在远程服务器上的用户名。
  • Authentication :选择 Private KeyPassword 进行身份验证。如果使用 SSH 密钥,确保 PyCharm 可以正确找到你的私钥文件。

PyCharm 将自动解析跳板机的配置,建立连接。

6. 选择远程 Python 解释器

PyCharm 会尝试连接到远程服务器,并扫描可用的 Python 解释器。通常会找到 /usr/bin/python3,但如果你有特定的虚拟环境或其他 Python 安装路径,你可以手动指定。

  • 如果 PyCharm 成功检测到解释器,请选择正确的 Python 解释器。
  • 如果没有自动找到,你可以手动输入远程服务器上的 Python 解释器路径(例如 /home/xp7/anaconda3/bin/python)。

7. 完成配置

确认连接和解释器路径无误后,点击 Finish ,PyCharm 会完成连接设置。

标签:跳板,机在,gadi,Python,SSH,服务器,PyCharm
From: https://www.cnblogs.com/skypanxh/p/18499592

相关文章

  • python编程语言实现身份证实名认证?身份证查询接口
    互联网的便利性犹如一把双刃剑,在给人们带来便利的同时,也滋生了网络诈骗、网络水军等影响网络健康、安全的隐患。为了更好地监管网络安全,建设绿色、健康的网络环境,互联网平台软件均开始实行实名认证,下面以翔云身份证实名认证接口为例。翔云身份证实名认证接口,实时联网,通过......
  • python编程语言实现身份证实名认证?身份证查询接口
    互联网的便利性犹如一把双刃剑,在给人们带来便利的同时,也滋生了网络诈骗、网络水军等影响网络健康、安全的隐患。为了更好地监管网络安全,建设绿色、健康的网络环境,互联网平台软件均开始实行实名认证,下面以翔云身份证实名认证接口为例。翔云身份证实名认证接口,实时联网,......
  • python C3算法
    PythonMROC3算法是python当中计算类继承顺序的一个算法,从python2.3以后就一直使用此算法了。c3linearization算法称为c3线性化算法C3算法原理首先定义几个符号的意义:符号意义L针对一个类进行解析用L进行表示,例如L(A)表示对类A进行解析merge合并操作的一个函......
  • Python的买家秀大揭秘:用代码点亮API数据
    在一个充满无限可能的数字世界里,Python侦探正准备开始他的新任务:揭开买家秀API数据的神秘面纱。这不仅是一次技术的挑战,更是一次与时间赛跑的较量。Python侦探,这位编程界的福尔摩斯,打开了他的笔记本电脑,准备开始这场冒险。Python侦探知道,要获取买家秀的API数据,他需要使用一些......
  • knime集成python实现当库存大于售出的80%发邮件给对应的客户实战案例
    数据样例:......
  • Python爬虫:爬取B站视频(详细讲解)
    Hello,大家好,我是南枫,今天带来什么项目呢?就是——爬B站视频。刷过B站的都知道,B站并没有下载功能,连官网都没有下载功能的话,那我们还能正常爬取吗?当然~首先我们要知道B站视频是分为视频和音频两部分,所以我们抓下来还不行,还需要把视频和音频给拼接起来。工作量乍一看感觉很大,其......
  • python_matlab图像去雾_去雨综述
    图像去雾和去雨是计算机视觉领域的两个重要任务,旨在提高图像质量和可视化效果。本文将综述图像去雾和去雨的算法、理论以及相关项目代码示例。一、图像去雾算法基于暗通道先验的方法:这是广泛应用于图像去雾的经典算法之一。该方法基于一个观察:自然场景中的大多数像素在......
  • 2024年韩顺平老师Python教程保姆级笔记
    代码获取:https://github.com/qingxuly/hsp_python_coursePython语言描述Python转义字符Python常用的转义字符转义字符说明\t制表符,实现对齐的功能\n换行符,\\一个\\"一个"\'一个'\r一个回车代码演示#\t制表符print("jack\t20")​#\n换行print("Hello,jack......
  • wrf-python安装教程
    记录一下wrf-python安装过程安装过程中出现了许多报错,这里记录了成功安装的完整流程。1.创建新环境#创建一个新环境推荐使用3.11版本condacreate-nWRFpython=3.11condaactivateWRF2.搭建Fortran环境1.安装visualstudio(自行前往官网下载)2.安装OneAPI(Base......
  • Python数据分析结合OpenAI:智能数据摘要和洞察
    Python数据分析结合OpenAI:智能数据摘要和洞察Python数据分析结合OpenAI:智能数据摘要和洞察在数据分析领域,随着数据集规模的日益庞大,如何从复杂的数据集中提取有价值的信息成为关键挑战。借助OpenAI的自然语言处理(NLP)能力,分析师可以自动生成摘要、报告,并获得有洞察力的结论......