도커 healthcheck document는 컬이를 보여줍니다 curl 대신 wget을 사용하여 Docker 상태 확인을 수행하는 방법은 무엇입니까?
HEALTHCHECK --interval=5m --timeout=3s \
CMD curl -f http://localhost/ || exit 1
내가 HTTP 200이 반환되지 않을 때 1을 종료 할 wget과의 한 줄 상당합니다.
도커 healthcheck document는 컬이를 보여줍니다 curl 대신 wget을 사용하여 Docker 상태 확인을 수행하는 방법은 무엇입니까?
HEALTHCHECK --interval=5m --timeout=3s \
CMD curl -f http://localhost/ || exit 1
내가 HTTP 200이 반환되지 않을 때 1을 종료 할 wget과의 한 줄 상당합니다.
다음은 동등한 것으로 보인다 :
HEALTHCHECK --interval=5m --timeout=3s \
CMD wget --quiet --tries=1 --spider http://localhost/ || exit 1
나는 하나의 char 약어가 아닌 매개 변수를 항상 사용합니다 ... "-t 1"은 필요하지 않습니다. 내 확인은 다음과 같습니다. "wget --quiet --spider h t t p : // localhost" – eventhorizon
. 비 HTTP 200으로 인해 wget이 무기한 재 시도하게되므로 --tries = 1이 필요합니다. –
나는 분명히해야한다, 나는 고산 3.6 wget에 재 시도를 보았다. 나는 MacOS wget으로 재 시도를 보지 못했다. –
모두'HEALTHCHECK', 당신은 지정 명령의 종료 상태가 '0'인 경우에 대해 듣고입니다 - 당신이 원하는 무엇이든 할 수있다. 따라서, 아래에서 주목했듯이, 엔드 포인트를 확인하고 적절히 실패하기 위해서는'wget' 명령이 필요합니다. –
@TJBiddle 우리는 Kelsey Hightower의 healthz 패턴을 사용하고 그 페이지에 healthcheck를 지정합니다. Wget에는 동일한 기능이 없으므로 해당 기능이 직관적이지 않습니다. –