PHP: 配置 SSH 密钥

本文件是使用 GitHub Actions 部署指南的一部分。您可以在这里查看完整指南:如何使用 GitHub Actions 部署您的 PHP 代码

👋 欢迎来到 Stackhero 文档!

Stackhero 提供现成的 PHP 云 解决方案,具有多种优势,包括:

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

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

SSH 密钥是让 GitHub Actions 在部署过程中安全连接到您的 PHP 服务的推荐方式。在本指南中,您将专门为此目的生成一对新的 SSH 密钥。

在您的电脑上运行以下命令以生成新的 SSH 密钥:

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

接下来,通过以下命令获取公钥:

cat /tmp/ssh_key.pub

前往您的 Stackhero 控制台,选择您的“Production” PHP 服务。点击“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 环境设置中:

  • Name 填写 STACKHERO_SSH_PRIVATE_KEY,并将您的私钥粘贴到 Value 字段。

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

  • Environment variables 部分,点击 Add variable

    设置变量设置变量

  • Name 填写 STACKHERO_ENDPOINT,并将您的 PHP 服务 endpoint 粘贴到 Value 字段。您可以在 Stackhero 控制台找到该 endpoint。

    设置 endpoint 变量设置 endpoint 变量

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

出于安全考虑,建议在设置完成后从您的电脑中删除生成的 SSH 密钥:

rm /tmp/ssh_key /tmp/ssh_key.pub