Administración del ciclo de vida de las aplicaciones en Azure Container Apps
El ciclo de vida de las aplicaciones de Azure Container Apps gira en torno a las revisiones.
Al implementar una aplicación de contenedor, se crea automáticamente la primera revisión. Se crean más revisiones a medida que cambian los contenedores o se realizan ajustes en la sección template
de la configuración.
Una aplicación de contenedor fluye por cuatro fases: implementación, actualización, desactivación y apagado.
Nota:
Los trabajos de Azure Container Apps no admiten revisiones. Los trabajos se implementan y actualizan directamente.
Implementación
Cuando se implementa una aplicación de contenedor, se crea automáticamente la primera revisión.
Actualizar
Cuando se actualiza una aplicación de contenedor con un cambio de ámbito de revisión, se crea una nueva revisión. Puede elegir si desactivar automáticamente las revisiones antiguas (modo de revisión única) o permitir que permanezcan disponibles (modo de revisión múltiple).
Cuando se encuentra en modo de revisión única, Container Apps controla el cambio automático entre revisiones para admitir una implementación sin tiempo de inactividad..
Desactivación
Una vez que ya no se necesite una revisión, puede desactivarla con la opción de volver a activarla más adelante. Durante la desactivación, los contenedores de la revisión se apagan.
Shutdown
Los contenedores se apagan en las situaciones siguientes:
- Cuando se reduce horizontalmente una aplicación de contenedor
- Cuando se elimina una aplicación de contenedor
- Cuando se desactiva una revisión
Cuando se inicia un apagado, el host del contenedor envía un mensaje SIGTERM al contenedor. El código implementado en el contenedor puede responder a este mensaje de nivel de sistema operativo para controlar la finalización.
Si la aplicación no responde al mensaje SIGTERM
en 30 segundos, SIGKILL finaliza el contenedor.
Además, debe asegurarse de que la aplicación pueda controlar correctamente los apagados. Los contenedores se reinician periódicamente, por lo que no se prevé que el estado se conserve dentro de un contenedor. En su lugar, debe usar cachés externas para requisitos costosos de caché en memoria.