Node.js: 配置 SSH 密钥

本文件是使用 GitHub Actions 部署指南的一部分。您可以在这里查看完整指南:了解如何通过 GitHub Actions 部署您的 Node.js 代码

👋 欢迎使用 Stackhero 文档!

Stackhero 提供即用型 Node.js 云 解决方案,具有众多优势,包括:

  • 通过简单的 git push 在几秒钟内 部署您的应用程序。
  • 使用您自己的域名,并享受 HTTPS 证书的自动配置以增强安全性。
  • 享受自动备份一键更新,以及简单、透明和可预测的定价带来的安心。
  • 通过私有和专用的 VM获得最佳的性能和强大的安全性

节省时间简化您的生活:只需 5 分钟即可试用 Stackhero 的 Node.js 云托管 解决方案!

SSH 密钥允许 GitHub Actions 在部署代码时安全地连接到您的 Node.js 服务。这是保护您的 Stackhero 服务的重要步骤。

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

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

要查看刚刚创建的公钥,请运行:

cat /tmp/ssh_key.pub

接下来,在 Stackhero 控制台中,选择您的生产环境 Node.js 服务,点击 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

在 GitHub 中,使用 STACKHERO_SSH_PRIVATE_KEY 作为 Name,并将您的私钥粘贴到 Value 字段。

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

然后,在 Environment variables 下,点击 Add variable

设置变量设置变量

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

设置 endpoint 变量设置 endpoint 变量

如果您为服务设置了自定义域名,请使用您的自定义域名替换 <XXXXXX>.stackhero-network.com。

为安全起见,建议您在 Stackhero 和 GitHub 配置好密钥后,从电脑上删除 SSH 密钥:

rm /tmp/ssh_key /tmp/ssh_key.pub