Dockerfile 方式
#每60秒检查一次,如果健康检查命令超过 3 秒没响应,并且重试3次都没响应就视为失败,并且使用curl -fs http://localhost/ || exit 1作为健康检查命令
#最初的状态为(health: starting),在等待几秒钟后,健康状态变化为了(healthy)
#如果健康检查连续失败超过了重试次数,状态就会变为(unhealthy)
HEALTHCHECK --interval=60s --timeout=3s --retries=3 \
CMD curl -fs http://localhost/ || exit 1
docker run 方式
$ docker run -d \
--name=myweb \
--health-cmd="curl -fs http://localhost/ || exit 1" \
--health-interval=5s \
--health-retries=12 \
--health-timeout=2s \
nginx:1.23