Ruby on rails 3 Capistrano多服务器配置

Ruby on rails 3 Capistrano多服务器配置,ruby-on-rails-3,deployment,capistrano,Ruby On Rails 3,Deployment,Capistrano,我试图让Capistrano运行多级部署,其中每个阶段都有多个服务器 例如,在部署设置的第一阶段使用以下角色进行部署 Staging Web: "server_a", "server_b" DB: "server_c" 服务器a和服务器b都部署到“/var/www/appname” 服务器\u c需要部署到“/apps/www/appname” 部署后,需要运行捆绑程序和迁移,然后重新启动文件集 是否可以使用Capistrano为不同的服务器/角色部署到不同的目录 如果没有,

我试图让Capistrano运行多级部署,其中每个阶段都有多个服务器

例如,在部署设置的第一阶段使用以下角色进行部署

Staging
    Web: "server_a", "server_b"
    DB:  "server_c"
服务器a
服务器b
部署到“/var/www/appname”

服务器\u c
需要
部署到“/apps/www/appname”

部署后,需要运行捆绑程序和迁移,然后重新启动文件集

  • 是否可以使用Capistrano为不同的服务器/角色部署到不同的目录
  • 如果没有,是否有任何部署系统可以
  • 如果不是,我是不是被困在手上
  • 可以使用,并为每个环境设置不同的阶段。您将为每个环境设置角色,这样登台可能使用一组服务器进行部署,而生产使用另一组服务器

    在相同的阶段特定配方(即在
    config/deploy/staging
    )中,您可以设置仅适用于该阶段的挂钩。您还可以在此处为Capistrano变量设置不同的值

    例如,您可能有阶段“staging”:

    在“生产”阶段:

    role :web, "server_a", "server_b"
    role :db,  "server_c"
    
    set :deploy_to, "/var/www/stagingsite"
    after "deploy:update_code" do
        run "echo hello"
    end
    
    role :web, "server_d", "server_e"
    role :db,  "server_f"
    
    set :deploy_to, "/apps/www/appname"
    after "deploy:update_code" do
        run "chmod g+w #{release_path}/tmp"
    end