Docker – Instrucción HEALTHCHECK

Una instrucción HEATHCHECK determina el estado de un contenedor Docker. Determina si el contenedor se está ejecutando en un estado normal o no. Realiza comprobaciones de estado a intervalos regulares. El estado inicial está comenzando y después de un chequeo exitoso, el estado se vuelve saludable. Si la prueba sigue sin tener éxito, se convierte en un estado no saludable

Algunas opciones proporcionadas por la instrucción HEALTHCHECK son: 

  • –interval= : Determina el intervalo entre 2 controles de salud. El intervalo predeterminado es de 30 s.
  • –timeout= : si el comando HEALTHCHECK excede la duración especificada, se clasifica como una falla. La duración predeterminada es de 30 s.
  • –retries= : si alcanza el número especificado de reintentos, se considera que el estado no es saludable. El número predeterminado de reintentos es 3.

En este artículo veremos ejemplos prácticos de cómo usar el comando HEALTHCHECK en tu Dockerfile . Crearemos un contenedor Nginx y determinaremos sus estados. Siga los pasos a continuación para verificar el estado de su dockerfile :

Paso 1: Crea un Dockerfile

Puede usar la siguiente plantilla para crear el Dockerfile.

FROM nginx:latest
HEALTHCHECK --interval=35s --timeout=4s CMD curl -f https://localhost/ || exit 1
EXPOSE 80

En el Dockerfile anterior , extraemos la imagen base de nginx y realizamos un HEALTHCHECK con el intervalo y el tiempo de espera especificados. 

Paso 2: crea la imagen de Docker

Podemos construir la imagen de Docker usando el comando de construcción.

sudo docker build -t healthcheck-demo .

building the image

Paso 3: ejecutar el contenedor

Aquí, comprobaremos si el archivo nginx.conf existe o no. Estableceremos el comando mientras ejecutamos el contenedor Docker.

sudo docker run --name=healthcheck-demo -d
--health-cmd='stat /etc/nginx/nginx.conf 
|| exit 1' healthcheck-demo

/* This line must be without the breaks, it's done for viewing purpose*/

running the container

Paso 4: Determinar el estado del Contenedor

Puede usar el comando de inspección para determinar el estado del Contenedor.

sudo docker inspect --format='' healthcheck-demo

Obtendrá todos los detalles sobre el contenedor junto con los estados durante todos los controles de salud.

state of containerhealth of the container

Para concluir, en este artículo discutimos qué son las instrucciones HEALTHCHECK , cuáles son sus usos, las diversas opciones que puede usar junto con él. Usamos el contenedor nginx para demostrar lo mismo con ejemplos prácticos.

Publicación traducida automáticamente

Artículo escrito por iamrj846 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *