Python: 設定 SSH 金鑰

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

👋 歡迎來到 Stackhero 文檔!

Stackhero 提供一個即用型的 Python 雲端 解決方案,帶來多項好處,包括:

  • 只需一個簡單的 git push,即可在幾秒鐘內部署您的應用程式。
  • 使用您自己的域名,並享受 HTTPS 證書的自動配置以增強安全性。
  • 享受自動備份一鍵更新,以及簡單、透明且可預測的定價,讓您安心無憂。
  • 得益於專用的私人 VM,獲得最佳的性能和強大的安全性

節省時間簡化您的生活:只需 5 分鐘即可嘗試 Stackhero 的 Python 雲端託管 解決方案!

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,Value 貼上您的 Python 服務 endpoint。您可以在 Stackhero 控制台找到這個 endpoint。

設定 endpoint 變數設定 endpoint 變數

如果您已自訂服務的網域名稱,請使用自訂的網域名稱,而不是 <XXXXXX>.stackhero-network.com。

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

rm /tmp/ssh_key /tmp/ssh_key.pub