如何在Capistrano中为服务器使用不同的用户?

时间:2014-01-05 03:07:50

标签: ruby-on-rails ruby capistrano

我想在其Capistrano文件中将其中一个角色的用户设置为另一个角色。我怎么做?现在,所有服务器的用户都设置为“sshadmin”。

set :user, "sshadmin"

server "198.227.6.30", :app
server "192.9.1.17", :web 
server "192.9.31.9", :db #I want this to use the user "sshadmin2"

2 个答案:

答案 0 :(得分:0)

在Capistrano v3中您可以使用此指令:

role :app, %w{sshadmin@198.227.6.30}
role :web, %w{sshadmin@192.9.1.17} 
role :db,  %w{sshadmin2@192.9.31.9}

答案 1 :(得分:0)

来自Capistrano documentation

  

可以通过多种方式定义服务器,以下显示定义两个服务器,一个用于设置用户名,另一个用于设置端口。这些主机字符串在注释后被解析并扩展为等效的服务器行:

role :web, %w{hello@world.com example.com:1234}
# ...is the same as doing...
server 'world.com' roles: [:web], user: 'hello'
server 'example.com', roles: [:web], port: 1234

适用于您的案例

role :db,  %w{sshadmin2@192.9.31.9}