Por qué CTRL+C no para el contenedor (y cómo arreglarlo con docker --init)


Muchas veces trabajando con contenedores con docker, aunque ahora hay alternativas como podman, las señales que hacen que el contenedor se pare como CTRL+C (SIGINT), no llegaban al contenedor y en muchas ocasiones tenía que forzar su salida.

Leyendo sobre contenedores, encontré que docker ha añadido desde hace tiempo la opción --init del comando run para mejorar la gestión de las señales del sistema. Esto lo hace lanzando un pequeño programa, tini, que adquiere el PID 1 y se encarga de gestionar tanto las señales del sistema como los procesos zombie.

Me ha recordado a la época en la que estudiaba más en profundidad los sistemas operativos.