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