DespliegueSolución de problemasEl servicio nunca llega a estar saludable

Mi servicio se despliega pero nunca pasa a healthy

La compilación se completa, las réplicas se inician, pero el despliegue sigue pendiente, se marca como unhealthy o nunca recibe tráfico.

Qué significa esto

La verificación de estado de la plataforma —que comprueba que se puede acceder al puerto de tu app— nunca se completa correctamente, así que el tráfico nunca se redirige a las nuevas réplicas.

Por qué puede pasar esto

  • Tu app no está escuchando en el puerto esperado. Lizard inyecta una variable de entorno PORT (puerto de contenedor predeterminado 3000) y comprueba que se pueda acceder a tu app ahí. Si tu app tiene otro puerto fijado en el código, o nunca se enlaza a ninguno, la verificación de estado falla indefinidamente. Una app de Python es el caso más habitual: gunicorn y uvicorn se enlazan a 127.0.0.1 a menos que les indiques otra cosa, y la sonda viene desde fuera del proceso. Hosting de apps Python tiene la línea --bind 0.0.0.0:$PORT que necesita cada framework.
  • El servicio está accidentalmente en modo worker. Configurar containerPort=0 pone un servicio en modo worker, lo que omite por completo la verificación de estado y el registro en el balanceador de carga. Un servicio que debería servir HTTP pero se cambió a containerPort=0 se desplegará “correctamente” y simplemente nunca servirá nada: el modo worker oculta el problema subyacente de arranque en lugar de mostrarlo.

Posibles soluciones

Comprueba el puerto actual

lizard port --service api

Si esto muestra worker mode, el servicio tiene containerPort=0. Vuelve a configurarlo con un puerto real si este servicio debe servir HTTP:

lizard port 3000 --service api
lizard redeploy --service api

Confirma que tu app está escuchando donde Lizard espera

Revisa los logs de ejecución para detectar errores de arranque y verifica el puerto al que la app realmente se enlazó frente al que Lizard inyectó:

lizard logs --service api
lizard ssh --service api -- env | grep PORT

Ver también