Node.js: 設定 SSH 金鑰
本文件是使用 GitHub Actions 部署指南的一部分。請在此處查看完整指南:學習如何透過 GitHub Actions 部署您的 Node.js 程式碼。
👋 歡迎來到 Stackhero 文檔!
Stackhero 提供即用型的 Node.js 雲端 解決方案,帶來多項優勢,包括:
- 只需一個簡單的
git push,即可在幾秒鐘內 部署您的應用程式。- 使用您自己的域名,並享受 HTTPS 證書的自動配置以增強安全性。
- 享受自動備份、一鍵更新,以及簡單、透明且可預測的定價,讓您高枕無憂。
- 憑藉專用的私人 VM,獲得最佳的性能和強大的安全性。
節省時間並簡化您的生活:只需 5 分鐘即可嘗試 Stackhero 的 Node.js 雲端託管 解決方案!
SSH 金鑰可讓 GitHub Actions 在部署程式碼時安全地連線到您的 Node.js 服務。這是保護您 Stackhero 服務的重要步驟。
在您的電腦上,您可以使用以下指令產生新的 SSH 金鑰:
ssh-keygen -C "" -f /tmp/ssh_key -N ""
設定公開金鑰
若要查看剛剛產生的公開金鑰,請執行:
cat /tmp/ssh_key.pub
接著,請在 Stackhero 控制台中,選擇您的 production Node.js 服務,並點擊 Configure 按鈕。
取得服務設定
請依照下列步驟操作:
- 在 SSH public keys 區塊,點擊 Add a public key。
- 在 Description 欄位輸入
GitHub Action。 - 在 Key 欄位貼上您剛才複製的公開金鑰。
取得服務設定
設定私密金鑰
現在,切換到 GitHub 並開啟您的專案 repository。點擊 Settings,然後選擇 Environments。接著選擇 New environment。
設定 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
若要取得您產生的私密金鑰,請執行:
cat /tmp/ssh_key
在 GitHub 上,請將 Name 設為 STACKHERO_SSH_PRIVATE_KEY,並將您的私密金鑰貼到 Value 欄位。
設定 SSH 私密金鑰 secret
接著,在 Environment variables 區塊,點擊 Add variable。
設定變數
將 Name 設為 STACKHERO_ENDPOINT,並將您的 Node.js 服務 endpoint 貼到 Value 欄位。您可以在 Stackhero 控制台找到這個 endpoint。
設定 endpoint 變數
如果您已為服務設定自訂網域名稱,請使用您的自訂網域取代 <XXXXXX>.stackhero-network.com。
刪除產生的金鑰
為了安全起見,建議您在 Stackhero 與 GitHub 設定完成後,將電腦上的 SSH 金鑰刪除:
rm /tmp/ssh_key /tmp/ssh_key.pub