【问题标题】:Controlling Healthcheck with a Compose file in DDEV-Local在 DDEV-Local 中使用 Compose 文件控制 Healthcheck
【发布时间】:2021-08-16 14:50:30
【问题描述】:

使用 DDEV Local 项目有时会导致运行状况检查失败,但最终会变得可用。有人如何禁用运行状况检查以更好地诊断容器中发生的情况?

【问题讨论】:

    标签: docker-compose ddev


    【解决方案1】:

    感谢 docker-composer 的集成,我们可以创建一个用于运行状况检查的 compose 文件并根据需要调整其设置。

    开始将docker-compose.healthcheck.yaml 文件添加到您的.ddev 目录。

    然后要禁用运行状况检查,它应该如下所示:

    version: '3.6'
    services:
      web:
        healthcheck:
          test: ['CMD','true'] //disable the healthcheck
    

    在本例中,我们使用['CMD','true'] 强制测试通过,而不是使用disable:true,因为禁用键无法与默认设置的其他选项配对。

    此外,如果您想在容器失败之前调整timeout,您可以像这样调整撰写文件:

    version: '3.6'
    services:
      web:
        healthcheck:
          timeout: 30s //set how long before healthcheck fails
    

    您还可以通过Compose File Healthcheck 文档进一步熟悉可用的健康检查选项。

    【讨论】:

      【解决方案2】:

      选项 1

      要禁用 Docker 健康检查,您可以使用 test: ["NONE"]

      services:
        your-service:
          healthcheck:
            test: ["NONE"]
      

      https://docs.docker.com/compose/compose-file/compose-file-v3/#healthcheck

      我使用 docker-compose 版本 1.25.0 和 Docker Compose Document 版本 '3.1'。

      它对我不起作用,但在文档中有描述。

      healthcheck:
        disable: true
      

      选项 2

      但是,我不知道原因,docker-compose.override.yml 的一部分不适用于该设置。父母docker-compose.yml有健康设置,我认为是错误的。

      ERROR: Service "nginx" defines an invalid healthcheck: "disable: true" cannot be combined with other options
      

      要在docker-compose.override.yml 中禁用它,我使用以下设置:

      healthcheck:
        test: ["CMD", "none"]
      

      选项 3

      我认为禁用健康检查的另一种方法是使用不同的 docker-compose 配置:

      • 基础docker-compose.yml 没有运行状况检查。
      • 带有运行状况检查的第二个docker-compose.healthcheck.yml 将与父docker-compose.yml 合并:
      # With healthcheck
      docker-compose -f docker-compose.yml -f docker-compose.healthcheck.yml up
      
      # With override
      docker-compose up
      
      # Without override and healthcheck
      docker-compose -f docker-compose.yml up
      

      【讨论】:

        猜你喜欢
        • 2019-07-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-25
        • 2020-01-24
        • 2018-08-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多