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