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

使用跳板机在 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 xp@gadi.nci.org.au

这个命令使用 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 端口。
  • xp@gadi.nci.org.au :这是你连接 跳板机 的 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 xp@gadi.nci.org.au  # 配置跳板机
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 会完成连接设置。

posted @ 2024-10-24 14:56  skypanxh  阅读(247)  评论(0编辑  收藏  举报