講述可靠的重複式部署和配置方法。
本書會系統性的介紹:
- 從零開始架設 VPS
- 快速搭建多個伺服器
- 使用 Capistrano 可靠地部署
- 使用自動化工具處理瑣碎的維護任務
如果你花了很多錢把應用程式部署在 Heroku 上,使用本書介紹的工具,可以将其遷移到 VPS 上。
如果應用程式已經運作在 VPS 上,但部署的過程不牢靠,有時無法重新開機,有時加載了錯誤的代碼版本,使用本書提供的模闆可以讓部署的過程更可靠。
我花了很多時間閱讀部落格文章、文檔,調整設定檔案,我的技能提升了很多,把應用程式部署到 VPS 就像部署到 Heroku 一樣順手,甚至有時還更簡單。如果你想達到和我相同的技術水準,閱讀本書吧,可以節省你很多時間。
第一部分:Chef
介紹如何使用 Chef 自動配置新伺服器。看完這部分,你就能在幾分鐘之内搭建好一台新伺服器。
很多 Rails 所需的設定(MySQL,Postgres,Mongo,Redis)都包含在本書附帶的示例代碼中。
其他章節詳細分析了如何根據需要定制設定。
這部分的目的是建立一個可重複使用的藍本,隻要需要配置新的 VPS,随手就能拿來用。
第二部分:Capistrano
Capistrano 可用來自動執行部署過程中的所有工作,例如更新代碼,管理靜态資源檔案和背景作業。
這部分特别關注了如何進行不下線部署,特别是需要頻繁更替版本,或者一天内要多次部署的情況。
其中還有一節準本介紹常見的問題,例如部署後無法重載 Gemfile,以及如何在程式不下線的情況下執行資料庫遷移操作。
最後,介紹如何使用一個指令就在多個不同的生産環境、傳遞準備環境和開發環境中複制資料庫。
第三部分:日常維護
Heroku 等 Sass 平台吸引人的地方在于,它們提供了日常維護所需的實用工具。這部分介紹如何在自己的伺服器上複用這些工具,具體内容如下:
- 監控伺服器,并自動進行失效恢複操作
- 報警功能(使用 Monit),避免報警超載
- 使用 Sidekiq 管理背景作業
- 管理 SSL 證書
- 日志檔案分割