Mis cambios en el Dockerfile no parecen aplicarse
Tienes un Dockerfile en tu repositorio, lo editaste, pero la compilación que ejecuta Lizard no coincide con lo que escribiste.
Qué significa esto
La plataforma decidió que el Dockerfile de tu repositorio estaba incompleto y regeneró uno por ti con lizardpack en lugar de usar el tuyo literalmente.
Por qué puede pasar esto
Esta comprobación se ejecuta solo para servicios con origen GitHub. Las cargas (lizard up) siempre usan un Dockerfile en la raíz tal como está escrito.
Con origen GitHub, Lizard trata un Dockerfile en la raíz como incompleto cuando se cumplen ambas condiciones:
- tiene un
COPYdebuild,dist,out,.nextopublicescrito sin barra final, comoCOPY dist /usr/share/nginx/html; - no tiene ninguna línea
RUNque empiece connpm,yarn,pnpm,bun,pip,pip3,bundle,cargo,go build,mvnogradle.
Lizard asume que esos artefactos se compilaron fuera de la imagen, y lizardpack genera un Dockerfile de reemplazo que incluye el paso de compilación faltante.
Otras dos configuraciones también omiten el Dockerfile de la raíz de tu repositorio. Si dockerfilePath está configurado, Lizard usa ese archivo tal como está escrito. Si no lo está, un buildCommand o startCommand configurado hace que Lizard sintetice un Dockerfile a partir de esos comandos.
Posibles soluciones
Agrega un paso de compilación real
Si quieres que tu Dockerfile se use tal cual, dale un paso de compilación real en lugar de copiar salida precompilada:
RUN npm ci && npm run buildO fuerza el uso literal
Configura dockerfilePath. Tiene prioridad sobre los comandos de compilación e inicio para la compilación de la imagen, pero un startCommand configurado sigue reemplazando el CMD de tu Dockerfile en tiempo de ejecución, así que borra ambos en la misma actualización. Un valor vacío borra un campo:
lizard service set api --set buildCommand= --set startCommand= --set dockerfilePath=DockerfileVer también
- Proceso de compilación — el orden completo de decisión de compilación.
- Referencia de configuración de compilación
- Un contenedor mínimo de FastAPI — un Dockerfile completo de Python, y cuándo aportar el tuyo en lugar de la compilación desde el código fuente.
Cambiar estos campos de compilación puede iniciar una compilación. Revisa lizard events antes de enviar otro redeploy, para evitar iniciar una segunda compilación.
Actualizado