Ruby on rails 如何将rails应用程序部署到Capistrano和rails 3中的多个域/用户/db组合?
这听起来可能很奇怪(甚至很危险),但我想将一个rails应用程序部署到多个域。我为几个不同的客户建立了一个CMS。这些站点之间的唯一区别是CSS文件、图像、database.yml和config.yml文件。当我部署时,我想一次更新他们的所有站点。每个域使用不同的用户名和密码,因此我不能使用deploy.rb文件中正常设置的单个用户。基本上,我需要在不同的用户集、域和数据库上运行部署 我的需求不同于仅仅部署到几个暂存、测试或负载平衡服务器。每个web服务器都是一个独特且独立的生产服务器,运行起来就像是一个不同的rails应用程序 我需要在deploy.rb中执行以下操作:Ruby on rails 如何将rails应用程序部署到Capistrano和rails 3中的多个域/用户/db组合?,ruby-on-rails,ruby-on-rails-3,capistrano,Ruby On Rails,Ruby On Rails 3,Capistrano,这听起来可能很奇怪(甚至很危险),但我想将一个rails应用程序部署到多个域。我为几个不同的客户建立了一个CMS。这些站点之间的唯一区别是CSS文件、图像、database.yml和config.yml文件。当我部署时,我想一次更新他们的所有站点。每个域使用不同的用户名和密码,因此我不能使用deploy.rb文件中正常设置的单个用户。基本上,我需要在不同的用户集、域和数据库上运行部署 我的需求不同于仅仅部署到几个暂存、测试或负载平衡服务器。每个web服务器都是一个独特且独立的生产服务器,运行起来
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"
这样的事情可能吗?如果没有,一个好的选择将不胜感激 我们使用了
capistrano ext
的多级选项,如中所述
blogpost中的示例针对发布的不同阶段(测试、验收、生产),但您也可以使用它部署到不同的服务器。由于每个阶段都有自己的配置文件,您可以轻松地更改每个阶段的配置(config.yml/database.yml)
如果你有更多的问题,只要问:)+1我起初以为这是一个重复的问题,但这与这个话题上的普通问题有点不同。