Python: 配置 SSH 密钥

本文档属于使用 GitHub Actions 部署指南的一部分。您可以在此处查看完整指南:如何使用 GitHub Actions 部署您的 Python 代码

👋 欢迎查阅 Stackhero 文档!

Stackhero 提供即开即用的 Python 云服务 方案,助您高效简化部署流程:

  • 只需一次简单的 git push,即可在几秒钟内将您的应用部署到生产环境。
  • 支持自定义域名,自动配置 HTTPS 证书,安全连接全程托管,无需手动操作。
  • 提供自动备份一键升级可预测的定价,让您专注于代码开发,无需担心基础设施管理。
  • 依托私有专属基础设施,为您带来强劲的性能安全保障。您的环境完全隔离且受到保护。

节省时间简化工作流程:通过 Stackhero 的 Python 云主机,您的代码最快只需 5 分钟即可上线运行。

SSH 密钥允许 GitHub Actions 安全地连接到您的 Python 服务进行代码部署。这一步对于保护您的 Stackhero 服务至关重要。

在您的电脑上,您可以通过以下命令生成新的 SSH 密钥:

ssh-keygen -C "" -f /tmp/ssh_key -N ""

首先,显示您刚刚生成的公钥:

cat /tmp/ssh_key.pub

接下来,在 Stackhero 控制台中,选择您的“production” Python 服务,点击“Configure”按钮。

获取服务设置获取服务设置

请按照以下步骤操作:

  1. SSH public keys 下,点击 Add a public key
  2. Description 中输入 GitHub Action
  3. Key 中粘贴您刚刚复制的公钥。

添加公钥添加公钥

进入您的 GitHub 项目页面,点击 Settings,然后选择 Environments。点击 New environment

配置 GitHub 环境配置 GitHub 环境

Name 字段中输入“production”,并确认。

设置环境设置环境

点击 No restriction 按钮,选择 Selected branches and tags

设置环境限制设置环境限制

然后,点击 Add deployment branch or tag rule,在 Name pattern 字段输入“production”,点击 Add rule

设置环境分支设置环境分支 设置环境分支设置环境分支

Environment secrets 部分,点击 Add secret

添加密钥添加密钥

现在,显示您之前生成的私钥:

cat /tmp/ssh_key

在密钥设置中,将 STACKHERO_SSH_PRIVATE_KEY 作为 Name,粘贴私钥作为 Value。

设置 SSH 私钥密钥设置 SSH 私钥密钥

接下来,在 Environment variables 部分,点击 Add variable

设置变量设置变量

输入 STACKHERO_ENDPOINT 作为 Name,将您的 Python 服务 endpoint 粘贴为 Value。您可以在 Stackhero 控制台中找到该 endpoint。

设置 endpoint 变量设置 endpoint 变量

如果您自定义了服务的域名,请使用自定义域名,而不是 <XXXXXX>.stackhero-network.com。

出于安全考虑,建议现在就从您的电脑中删除 SSH 密钥,因为后续不再需要:

rm /tmp/ssh_key /tmp/ssh_key.pub