我正在尝试向我的 docker 容器添加运行状况检查,所以在我的 Dockerfile 中我添加了这一行
HEALTHCHECK CMD curl --fail http://localhost:8080/health || exit 1
大致基于本教程:https ://howchoo.com/g/zwjhogrkywe/how-to-add-a-health-check-to-your-docker-container 。在我的 docker-compose 文件中,我添加了这样的运行状况检查行:
healthcheck:
test: ["CMD", "curl", "--silent", "--fail", "http://localhost:8080/health"]
但容器总是报告不健康。因此,如果我执行docker exec -it my-container /bin/bash
并进入容器,然后执行运行状况请求,我会得到:
$ curl --fail http://localhost:8080/health
curl: (22) The requested URL returned error: 411 Length Required
我错过了什么?Nginx 已经安装在容器中,所以我想简单地使该 URL/health
正常工作。