2010-07-21 60 views
1

从我所了解的默认代码中,将部署所有已定义的角色。假设你在不同的机器上有一个数据库,然后你的网络服务器。您为Web服务器和数据库定义角色,然后部署。目前我的capistrano脚本正在将源代码部署到两台机器上。我希望它仅将源部署到Web服务器。当db与web服务器不是同一台机器时,Capistrano部署

这怎么办? Capistrano网站大多都有单机架构的例子。

+1

纠正我,如果我错了,但你需要数据库机器上的代码来运行迁移和什么,不是吗? – rfunduk 2010-07-21 18:24:39

+0

啊对,不好的例子我猜。我实际上并没有考虑数据库(这只是我的例子),实际上我正在讨论一个负载平衡器的配置,它位于存储库中。猜猜我真正想要的只是复制配置,我知道该怎么做。再次抱歉哑巴问题。 :P – 2010-07-21 18:36:15

+0

您可以随时定义新角色,为每个角色分配服务器,并定义只在定义的角色中运行的任务... – mpapis 2010-12-18 21:49:43

回答

1

在我的情况下,我有单独的网络和应用服务器。为了不代码部署到Web服务器,我使用以下命令:

role :web, "myappserver.com", :no_release => true 

许多在Capistrano的任务有什么资格当这个变量被设置为不运行。

相关问题