Node.js: 配置 SSH 密钥
本文件是使用 GitHub Actions 部署指南的一部分。您可以在这里查看完整指南:了解如何通过 GitHub Actions 部署您的 Node.js 代码。
👋 欢迎来到 Stackhero 文档!
Stackhero 提供即开即用的 Node.js cloud 环境,助您加速开发进程:
- 几秒钟内部署到生产环境,只需简单的
git push,无需额外工具或手动配置。- 支持自定义域名,并自动配置 HTTPS 证书,让您的应用安全无忧,无需额外设置。
- 自动备份、一键更新以及可预测的定价,让您专注于功能开发,基础设施交由 Stackhero 管理。
- 基于专属私有基础设施,确保性能稳定和高安全性。
节省时间,降低运维负担:只需几分钟,您的应用即可在 Stackhero 的 Node.js cloud hosting 上运行。
SSH 密钥允许 GitHub Actions 在部署代码时安全地连接到您的 Node.js 服务。这是保护您的 Stackhero 服务的重要步骤。
在您的电脑上,您可以通过以下命令生成新的 SSH 密钥:
ssh-keygen -C "" -f /tmp/ssh_key -N ""
设置公钥
要查看刚刚创建的公钥,请运行:
cat /tmp/ssh_key.pub
接下来,在 Stackhero 控制台中,选择您的生产环境 Node.js 服务,点击 Configure 按钮。
获取服务设置
继续以下步骤:
- 在 SSH public keys 下,点击 Add a public key。
- 在 Description 中输入
GitHub Action。 - 在 Key 字段粘贴您刚才复制的公钥。
获取服务设置
设置私钥
现在,切换到 GitHub,打开您的项目仓库。点击 Settings,然后选择 Environments,接着选择 New environment。
配置 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 私钥密钥
然后,在 Environment variables 下,点击 Add variable。
设置变量
输入 STACKHERO_ENDPOINT 作为 Name,并将您的 Node.js 服务 endpoint 粘贴到 Value 字段。您可以在 Stackhero 控制台中找到该 endpoint。
设置 endpoint 变量
如果您为服务设置了自定义域名,请使用您的自定义域名替换 <XXXXXX>.stackhero-network.com。
删除生成的密钥
为安全起见,建议您在 Stackhero 和 GitHub 配置好密钥后,从电脑上删除 SSH 密钥:
rm /tmp/ssh_key /tmp/ssh_key.pub