首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Capistrano中的“角色”到底是什么?

Capistrano中的“角色”到底是什么?
EN

Stack Overflow用户
提问于 2009-07-20 18:45:54
回答 2查看 26.5K关注 0票数 87

Capistrano菜谱中“角色”的目的和功能是什么?当我看示例食谱时,我经常看到这样的东西:

role :app, 'somedomain.com'
role :web, 'somedomain.com'
role :db,  'somedomain.com', :primary => true

因此,它看起来像一个角色基本上是一个服务器,Capistrano在其中执行命令。如果是这样的话,为什么它会被称为“角色”而不是“主机”或“服务器”?

在上面的示例中,:app:web角色之间的区别是什么?

:primary => true选项的作用是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-20 19:28:58

角色允许您编写仅适用于特定服务器的capistrano任务。这实际上只适用于多服务器部署。默认角色"app“、"web”和"db“也在内部使用,因此它们的存在不是可选的(AFAIK)

在您提供的示例中,没有功能差异。

":primary => true“是一个允许在自定义任务中指定服务器的进一步粒度的属性。

以下是任务定义中角色指定的示例:

task :migrate, :roles => :db, :only => { :primary => true } do
  # ...
end

有关更广泛的解释,请参阅capistrano网站@ https://github.com/capistrano/capistrano/wiki/2.x-DSL-Configuration-Roles-Role

票数 67
EN

Stack Overflow用户

发布于 2013-08-15 18:02:57

":primary => true“选项表示数据库服务器是主服务器。例如,当您想要在MySQL中使用复制时,这一点很重要。它允许您创建另一个可用于自动故障转移的镜像数据库服务器。它还用于决定应该运行模型迁移的数据库服务器(因为这些更改将被复制到故障转移服务器)。这个链接进一步说明了这一点:https://github.com/capistrano/capistrano/wiki/2.x-from-the-beginning#back-to-configuration

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1155218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档