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 按钮。
获取服务设置
继续以下步骤:
- 在 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