這可能聽起來很奇怪(甚至是危險的),但我想部署一個rails應用程序到多個域。我爲一些不同的客戶建立了一個CMS。站點之間的唯一區別是CSS文件,圖像,database.yml和config.yml文件。當我部署時,我想一次更新他們的所有網站。每個域使用不同的用戶名和密碼,因此我不能使用deploy.rb文件中正常設置的單個用戶。基本上我需要在不同的用戶,域和數據庫上運行部署。如何在Capistrano和Rails 3中將Rails應用程序部署到多個域/用戶/數據庫組合?
我的需求與部署到多個分段,測試或負載平衡服務器不同。每個Web服務器都是一個獨特的獨立生產服務器,運行起來就像是一個不同的Rails應用程序。
我需要做的是這樣的deploy.rb如下:
role :app, "www.cats.com", "www.dogs.com"
role :web, "www.cats.com", "www.dogs.com"
role :db, "www.cats.com", "www.dogs.com" # both need the same migrations
set :deploy_to "/home/#{cats_user}/www.cats.com", "/home/#{dogs_user}/www.dogs.com"
是這樣的可能嗎?如果沒有,一個很好的選擇將不勝感激!
+1我認爲這是在第一次重複,但它比關於這一主題的正常問題,有些不同。 – jdl 2011-02-09 06:31:29