如何使用Capistrano v3仅部署到一台服务器?

pup*_*eno 11 capistrano capistrano3

如何使用Capistrano v3仅部署到一台服务器?我在那里发现的所有解决方案都部署到每个服务器,因此,我认为它们适用于v2.

我不想部署一个阶段,我已经在使用多阶段,我想在其中一个阶段只部署到一个服务器.

SDu*_*ude 6

正如所指出的,在Capistrano 3中,将应用程序的特定部分部署到单个服务器的方式是使用HOST过滤.让我们假设您正在直接部署到生产环境中,并且您具有此配置config/deploy/production.rb

set :stage, :production


server "webserver1.example.com”,         roles: [:web]

server "appserver1.example.com",         roles: [:app]                   
server "appserver2.example.com",         roles: [:app]                   
server "appserver3.example.com",         roles: [:app]                        

server “dbserver1.example.com”,          roles: [:db]
server “dbserver2.example.com”,          roles: [:db]
Run Code Online (Sandbox Code Playgroud)


然后,如果只想部署到webserver1,只需运行命令:

cap --hosts=webserver1.example.com production deploy
Run Code Online (Sandbox Code Playgroud)