【问题标题】:web_app definition in two cookbooks, how do I only call one of them?两本食谱中的 web_app 定义,我如何只调用其中一本?
【发布时间】:2014-04-08 18:53:40
【问题描述】:

所以我们使用 chef 作为我们的服务器,在设置 munin 的过程中,munin cookbook 现在需要 nginx 和 apache2。

我们也有自己的方法来使用 web_app 定义设置网站。

如果服务器只有 nginx 或 apache2,它可以正常工作,但只要在运行列表中两者都需要,web_app 定义就会在 apache2 和 nginx 中调用,这当然会失败,因为你不能在端口上运行两台服务器80.

如果不修改不好的食谱,我该如何解决这个问题或将范围仅限于 apache 或 nginx。顺便说一句,我们两者都需要。

【问题讨论】:

    标签: apache nginx chef-infra chef-recipe


    【解决方案1】:

    那里发生了一些混乱......只有apache2 cookbookweb_app definitionnginx cookbook 使用 nginx_site definition

    也就是说,您的问题似乎来自这样一个事实,即您有两个不同的进程试图在同一节点上的同一端口上侦听。要解决这个问题,您必须告诉 apachenginx 监听不同的端口。

    要配置apache,您必须覆盖node[:apache][:listen_ports] 以排除80。

    对于nginx,您可能必须将虚拟主机设置为不在端口 80 上侦听。

    【讨论】:

    • 你是对的,但这不是问题,我不希望它们都运行。
    【解决方案2】:

    我只是查看了我们的提交日志,结果发现是我自己的错 :-( 我将 web_app 定义从 apache 移植到我们自己的说明书从 apache 移植到 nginx.... 失败

    编辑:将 nginx 配方中的 web_app 重命名为 nginx_app 解决了问题

    【讨论】:

    • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
    • 我回答了我自己的问题,我不认为有两个同名的定义可以限定范围,所以这就是答案。
    • 这是我在 5 分钟内第二次看到有人因为回答自己的问题而骂人。如果它是正确的答案,那就是正确的答案,您可以回答自己的问题。
    猜你喜欢
    • 1970-01-01
    • 2017-07-11
    • 2023-04-05
    • 1970-01-01
    • 2017-04-19
    • 2017-04-27
    • 2018-02-13
    • 1970-01-01
    • 2016-05-16
    相关资源
    最近更新 更多