← Las 34 trampasTrampa P-031 · severidad alta

Tras un reinicio, un contenedor se queda sin DNS y el servidor del modelo se cuelga sin avisar

Qué pasó

Después de un corte de luz, un modelo no volvía a arrancar nunca. El contenedor entraba en un bucle de reinicios y el log solo decía Temporary failure in name resolution.

Por qué

Docker copia el fichero de DNS del sistema (resolv.conf) en el momento de crear el contenedor. Si eso ocurre durante el arranque, antes de que el resolvedor del sistema esté listo, el contenedor recibe una dirección (127.0.0.53) que dentro de él no es nadie. Todas las consultas DNS fallan.

vLLM, aunque tengas los pesos en disco, consulta Hugging Face al arrancar. Sin DNS no da error: reintenta para siempre.

Cómo evitarlo

docker exec <contenedor> cat /etc/resolv.conf     # ¿aparece 127.0.0.53?

Si es así, recrea el contenedor (docker compose up -d --force-recreate). Reiniciarlo no sirve: el fichero se fija al crearlo. Para que un modelo local no dependa de internet al arrancar, usa el modo sin conexión de tu servidor (por ejemplo, HF_HUB_OFFLINE=1).