【发布时间】:2011-02-09 05:26:39
【问题描述】:
这听起来可能很奇怪(甚至很危险),但我想将一个 rails 应用程序部署到多个域。我为几个不同的客户构建了一个 CMS。站点之间的唯一区别是 CSS 文件、图像、database.yml 和 config.yml 文件。当我部署时,我想一次更新他们的所有站点。每个域使用不同的用户名和密码,所以我不能使用 deploy.rb 文件中正常设置的单个用户。基本上我需要在不同的用户、域和数据库集上运行部署。
我的需求与仅部署到多个暂存、测试或负载平衡服务器不同。每个 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 起初我以为这是重复的,但它与关于这个主题的正常问题有点不同。
标签: ruby-on-rails ruby-on-rails-3 capistrano