Ruby: 部署到生產環境
使用 Stackhero 幾分鐘內將 Ruby 程式碼部署到生產環境
👋 歡迎瀏覽 Stackhero 文件!
Stackhero 提供即用型的 Ruby cloud 解決方案,帶來多項優勢,包括:
- 只需一個簡單的
git push,即可在數秒內部署您的應用程式。- 使用您自己的網域名稱,並享有自動配置HTTPS 憑證,提升安全性。
- 享受自動備份、一鍵更新,以及簡單、透明且可預測的收費。
- 憑藉專屬私有基礎設施,獲得最佳效能及強大安全性。
節省時間,簡化您的工作流程:只需5分鐘即可體驗 Stackhero 的 Ruby cloud hosting 解決方案!
Stackhero 的 Ruby 雲端託管服務 讓您可以在短短幾分鐘內將 Ruby 專案上線。您將獲得一個強大且穩定的平台,專為簡化部署流程而設計,讓您專注於應用程式本身,而非基礎設施。
您可以享有以下功能:
- 只需一個簡單的
git push指令即可部署您的程式碼。 - 使用您自訂的網域名稱,並自動管理 TLS 憑證(HTTPS)。
- 您的應用程式運行於專屬、隔離的基礎設施上,確保高度安全與私隱。
- 支援 HTTP/2、TLS 1.3(HTTPS)、WebSockets、GZIP 及 Brotli 壓縮、ETag、TCP 及 UDP 埠存取等多項先進功能。
先決條件
您只需在電腦上安裝 Git 即可開始。
<!--  -->如果您想節省時間,或不想設定本地開發環境,可以考慮使用 Stackhero 的 Code-Hero。
Code-Hero 是一個瀏覽器版的開發環境,適用於任何裝置。它基於 VSCode 分支,預先安裝及設定好主要開發工具,讓您無需任何設定即可立即開始編寫程式碼。
部署到 Stackhero 的步驟
將您的 Ruby 應用程式部署到 Stackhero 十分簡單。以下是整個流程,每個步驟會在下方詳細說明:
- 在 Stackhero 上建立一個 Ruby 服務。
- 將您的 SSH 公鑰加入 Ruby 服務的設定中。
- 在開發平台上設定
git push指令。 - 在專案中加入 Makefile。
- 將您的程式碼部署到生產環境。
如果部署過程中遇到任何問題,疑難排解 文件可以協助您快速找到解決方法,讓流程順利進行。
設定您的 Ruby 服務
如果您尚未建立 Stackhero for Ruby 服務,可以在 Stackhero 控制台中於幾分鐘內完成。
當您的 Ruby 服務啟動後,下一步是加入您的 SSH 公鑰。您可以透過以下指令顯示您的公鑰:
cat ~/.ssh/id_*.pub
還沒有 SSH 金鑰?
您可以使用以下指令產生:
ssh-keygen -t ed25519
要加入 SSH 金鑰,請到 Stackhero 控制台,選擇您的 Ruby 服務,點擊「Configure」,然後將您的公鑰貼到「SSH public keys」區域。
<!--  -->小提示:為了日後節省時間,您可以將 SSH 公鑰加入 Stackhero 個人檔案。新建立的服務會自動包含該公鑰。
點擊控制台右上角的個人頭像,選擇「Your profile」,然後新增您的 SSH 公鑰。
設定部署用的 git push 指令
部署到 Stackhero 只需使用 Git CLI 及 git push 指令,無需安裝其他工具。
您可以在 Stackhero 控制台的服務主頁複製 git remote 指令。一般格式如下:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
建立 Stackhero 部署用的 Makefile
為了讓 Stackhero 知道如何執行您的應用程式,請在專案根目錄新增一個 Makefile。這個檔案會定義 Stackhero 部署時要執行的指令。
如果您不熟悉 Makefile 或
make指令,下方步驟會帶您建立一個可用的 Makefile。
建立一個 Makefile,內容如下:
run:
rake assets:precompile
rake db:migrate RAILS_ENV=production
RAILS_ENV=production bundle exec puma -C config/puma.rb
這個 Makefile 的作用:
run規則是必需的。Stackhero 會以此作為部署時的進入點,請勿更改規則名稱。- 範例中使用了
rake和bundle,您可根據應用程式需求調整指令。 - 每一行指令必須以 Tab 字元開頭,不能用空格。如果出現
*** missing separator錯誤,請檢查是否使用了 Tab。
以上範例部署流程會:
- 將 JavaScript 和 CSS 等資產預先編譯到
public/assets目錄。 - 執行資料庫遷移。
- 啟動 Puma 伺服器來提供您的應用程式服務。
部署您的 Ruby 應用程式
您已準備好部署。請執行:
git push stackhero main
首次部署時,Git 會要求您確認 SSH 金鑰指紋。請輸入「yes」繼續。
稍等片刻,您的應用程式就會上線。
<!--  -->請到 Stackhero 控制台顯示的網站網址瀏覽您的已部署應用程式。網址格式通常為 https://<XXXXXX>.stackhero-network.com。
您的應用程式現已正式上線。
如果部署過程中遇到任何困難,疑難排解 區域有常見問題及解決方法。
結語
您已學會如何利用 Stackhero 將 Ruby 程式碼部署到生產環境,這個流程既強大又簡單。
如需進階主題,例如部署不同的 Git 分支、標籤或 commit,以及管理多個環境(如 staging 和 production),請參閱 進階部署用法 文件。您亦可找到有關環境變數及其他實用功能的提示。
如有任何疑問或遇到問題,疑難排解 文件隨時為您提供協助,確保您的部署流程順暢高效。