Coolify logoCoolify

健康检查

健康检查是确保应用程序和服务正常运行的一种方式。它们允许 Coolify 监控资源的健康状况,并确保流量仅路由到健康的实例。这对于 滚动更新 正常工作至关重要。

Traefik

当使用 Traefik 作为反向代理时,健康检查是其将流量路由到资源的核心组成部分。

已启用

如果资源的健康检查 已启用,Traefik 仅在健康检查通过时才会将流量路由到该资源。如果健康检查失败,Traefik 不会将流量路由到该资源。

这会导致资源返回 404 未找到无可用服务器 错误。

排查失败的健康检查

如果您遇到“无可用服务器”错误,请查看我们全面的 故障排除指南,其中涵盖了最常见的原因和解决方案。

已禁用

如果资源的健康检查 已禁用,Traefik 将无视健康检查状态,始终将流量路由到该资源。

配置健康检查

应用程序

有两种方式为应用程序配置健康检查:

健康检查配置
  1. 使用 UI:您可以在创建或编辑应用程序时直接在 Coolify UI 中设置健康检查。您可以指定要检查的路径、预期的响应代码以及检查间隔。容器必须安装 curlwget 才能执行健康检查。

  2. 使用 Dockerfile:您还可以在 Dockerfile 中使用 HEALTHCHECK 指令定义健康检查。这允许您指定如何执行健康检查,包括要运行的命令和预期的响应。

如果在 UI 和 Dockerfile 中都定义了健康检查且已启用,则 Dockerfile 的设置将优先生效。

服务堆栈

使用 Docker Compose 构建包 的服务或应用程序需要在其每个服务的 Dockerfile 中定义健康检查,或者在 docker-compose.y[a]ml 文件中使用 healthcheck 属性进行定义。

何时使用健康检查?

建议为所有资源启用健康检查。这样可以确保只有健康的资源接收流量。

但如果由于某些原因无法设置健康检查,您可以将其禁用。

请注意,如果资源不健康,它仍会接收流量。

On this page