Python: 設定 SSH 金鑰

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

👋 歡迎來到 Stackhero 文件中心!

Stackhero 提供即時可用的 Python 雲端 解決方案,專為簡化您的部署流程而設計:

  • 只需一個簡單的 git push,即可在數秒內將您的應用程式部署到正式環境。
  • 支援自訂網域名稱,並為您自動設定 HTTPS 憑證,確保連線安全。
  • 享有自動備份一鍵更新可預測的計價,讓您專注於程式開發,而無需煩惱基礎架構管理。
  • 專屬私有基礎架構上,獲得強大的效能安全性。您的執行環境完全隔離並受到保護。

節省時間簡化您的工作流程:透過 Stackhero 的 Python 雲端主機,您的程式碼只需 5 分鐘即可上線運作。

SSH 金鑰可讓 GitHub Actions 安全地連線到您的 Python 服務進行程式碼部署。這個步驟對於保護您的 Stackhero 服務至關重要。

在您的電腦上,您可以執行以下指令來產生新的 SSH 金鑰:

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

首先,顯示您剛剛產生的公開金鑰:

cat /tmp/ssh_key.pub

接著,在 Stackhero 控制台中,選擇您的「production」Python 服務,然後點擊「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

在 secret 設定中,請將名稱設為 STACKHERO_SSH_PRIVATE_KEY,並將私密金鑰貼到 Value 欄位。

設定 SSH 私密金鑰 secret設定 SSH 私密金鑰 secret

接下來,在 Environment variables 區塊中,點擊 Add variable

設定變數設定變數

將名稱設為 STACKHERO_ENDPOINT,並將您的 Python 服務 endpoint 貼到 Value 欄位。您可以在 Stackhero 控制台找到這個 endpoint。

設定 endpoint 變數設定 endpoint 變數

如果您自訂過服務的網域名稱,請使用自訂的版本,而非 <XXXXXX>.stackhero-network.com。

為了安全起見,建議您現在就從電腦中刪除這些 SSH 金鑰,因為之後將不再需要:

rm /tmp/ssh_key /tmp/ssh_key.pub