⬇️ Descargar el compose de ejemplo (YML) ⬇️ Descargar el Dockerfile de ejemplo ⬇️ Chuleta Docker (TXT)
Instala Docker, valida hello-world, crea la carpeta projet/mon-app con api/, compose.yml y .github/workflows. El ritual run/ps/stop/rm debe ser fluido.
Lanza postgres:16.4 con el volumen pgdata en la red monapp (sin publicar la base). Lanza adminer en el perfil dev. Demuestra rm + relanzamiento sin pérdida y resolución por nombre.
Escribe el Dockerfile de la api (slim, dependencias primero, USER node, .dockerignore), construye mon-app:1.0, escanea y corrige hasta cero críticas.
Ensambla api (build) + bdd (volumen) + adminer (perfil dev) con DATABASE_URL como variable, depends_on simple y luego retry aplicativo. Valida config, up --build, down/up sin pérdida.
Añade restart + healthcheck bdd + condición healthy, proxy publicado solo, copia dump + snapshot probada, workflow CI que construye + sube el SHA hacia GHCR.
Audita con la checklist 5.4 (8 síes), prueba Swarm en un solo nodo (3 réplicas), despliega el K8s mínimo en kind. Planifica la DCA.