这可能听起来很奇怪(甚至是危险的),但我想部署一个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