PHP: 設定 SSH 金鑰

本文件是使用 GitHub Actions 部署指南的一部分。請在此處查看完整指南:如何使用 GitHub Actions 部署您的 PHP 程式碼

👋 歡迎來到 Stackhero 文件中心!

Stackhero 提供專為快速且可靠部署設計的 PHP cloud 平台:

  • 只需一個簡單的 git push,即可在數秒內部署您的 PHP 應用程式到生產環境。
  • 可使用您自己的網域名稱,並為您自動設定 HTTPS 憑證,全程無需手動操作。
  • 享有自動備份一鍵更新,以及清楚、可預測的收費模式。Stackhero 為您處理這些細節,讓您能專注於開發程式碼。
  • 在專為您的應用程式打造的專屬私有基礎架構上,獲得強大的效能安全性

讓您的工作流程更順暢,節省寶貴時間。只需幾分鐘,即可開始體驗 Stackhero 的 PHP cloud hosting

建議使用 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

    新增 Secret新增 Secret

執行下列指令取得您先前產生的私鑰:

cat /tmp/ssh_key

在 GitHub 環境設定中:

  • Name 輸入 STACKHERO_SSH_PRIVATE_KEY,並將您的私鑰貼到 Value 欄位。

    設定 SSH 私鑰 Secret設定 SSH 私鑰 Secret

  • 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