为了确保容器的健康检查,我需要对多个URL执行测试调用。curl -f http://example.com和curl -f http://example2.com是否可以执行多个curl调用以进行Docker健康检查?
curl -f http://example.com
curl -f http://example2.com
gzszwxb41#
你可以设置一个脚本作为healthcheck命令,它包含一个更复杂的逻辑来执行healthcheck,这样你就可以通过curl执行多个请求,并且让脚本只在所有请求都成功的情况下返回肯定的结果。
# example dockerfile COPY files/healthcheck.sh /healthcheck.sh RUN chmod +x /healthcheck.sh HEALTHCHECK --interval=60s --timeout=10s --start-period=10s \ CMD /healthcheck.sh
vulvrdjw2#
虽然我不能测试,但我认为您可以使用以下代码
HEALTHCHECK CMD (curl --fail http://example.com && curl --fail http://example2.com) || exit 1
如果您想首先手动检查此命令(不带退出部分),您可以通过以下方式检查最后一个错误代码:
echo $? -> in linux
和
echo %errorlevel% -> in windows
2条答案
按热度按时间gzszwxb41#
你可以设置一个脚本作为healthcheck命令,它包含一个更复杂的逻辑来执行healthcheck,这样你就可以通过curl执行多个请求,并且让脚本只在所有请求都成功的情况下返回肯定的结果。
vulvrdjw2#
虽然我不能测试,但我认为您可以使用以下代码
如果您想首先手动检查此命令(不带退出部分),您可以通过以下方式检查最后一个错误代码:
和