我有一個Rails 3開發環境,我需要移動到另一臺機器。我想知道移動應用程序代碼,mysql數據庫和gems的最佳方法是什麼?移動Rails 3應用程序開發環境到另一臺機器
2
A
回答
2
在發展:
- 確保Ruby的版本是一樣的。複製所有寶石。
- 複製應用程序
- 進行數據庫轉儲並將其加載到新數據庫。如果DB是完全相同的版本和操作系統以及複製二進制數據文件可能就足夠了。
在生產中最糟糕的部分是同步數據庫和DNS。
- 如果您可以在域名的DNS條目中降低TTL(至1小時) - 讓DNS傳播更好地響應。
- 等待以前的TTL +新TTL以確保所有客戶端和代理更新 - 同時您可以在新機器上準備Rails 3應用程序。
- 將新機器80端口上的TCP/IP轉發設置爲舊機器80端口,但工作站例外(有權訪問新機器上的應用程序實例)。
- 完成準備應用程序,寶石,與副本的數據庫,測試它。
- 如果一切正常,請將DNS A條目更改爲新的主機IP - 在此情況下,1小時內所有客戶端都將通過新的主機IP(轉發)連接到舊實例。等待1小時。
- 離線:停止舊實例與維護消息
- 製作數據庫轉儲和加載新的實例
- 重新啓動新的應用程序實例
- 關閉轉發。離線結束。
2
您使用的是git或svn等版本控制系統嗎?如果是,那麼你只需要將你的代碼簽出到新機器上。如果不是,那麼我將不會做任何事情,直到你把它放到你選擇的git/svn /你的版本控制軟件中。
寶石應由打包商照顧。一旦源代碼移出,只需在新機器的源代碼目錄中運行bundle install
即可。
要移動數據庫,您可以從頭開始重建它,前提是您沒有任何重要數據(rake db:create db:migrate
)。否則,使用mysqldump database_name > database_name.sql
將數據庫轉儲到可以在新計算機上導入的SQL文件(cat database_name.sql | mysql new_database_name
)。
相關問題
- 1. 從同一臺機器開發和部署Rails應用程序
- 2. 在開發rails應用程序時開發gem的環境
- 3. 將應用程序從一臺計算機移動到另一臺
- 4. 跨平臺的手機開發環境
- 5. 面向移動和臺式機平臺的單一應用程序開發
- 6. java.lang.VerifyError - Android應用程序在將開發移植到另一臺機器後未啓動
- 7. 如何將Sharepoint中的Web應用程序移動到另一臺機器?
- 8. 爲我的rails應用程序開發移動應用程序
- 9. 如何將Homebrew環境遷移到另一臺計算機?
- 10. Android應用程序開發環境?
- 11. ASP.Net Web應用程序轉移到另一臺計算機
- 12. Rails應用程序認爲它在開發環境中生產
- 13. 開發,分段和生產環境rails應用程序
- 14. 未在開發環境中加載Rails應用程序資產
- 15. Mongo :: Error :: NoServerAvailable在Rails 5應用程序開發環境中
- 16. 如何在本地Rails環境中開發Shopify應用程序?
- 17. 加速開發環境中的Rails應用程序?
- 18. 移動Rails 3應用程序
- 19. R:將一個環境複製/移動到另一個環境
- 20. 本地主機上的Facebook應用程序開發環境
- 21. Rails 3應用程序中的rails-geocoder環境問題
- 22. 將Salesforce應用程序和數據複製到開發環境
- 23. 將Android應用程序的開發移到新機器
- 24. 動作郵件程序開發環境軌跡3
- 25. 用於閱讀SMS收件箱的跨平臺移動應用開發環境
- 26. 從另一臺機器訪問控制檯應用程序 - .NET
- 27. Smalltalk Web應用程序開發環境從頭開始?
- 28. 移動Web應用程序到另一臺服務器,但使用
- 29. 跨機器克隆開發環境
- 30. 開發應用程序到手機
如果這是一個開發環境,干擾/停機真的很重要嗎? – tjwallace 2011-01-21 14:39:50