Modulo 6 — Compose per ambienti reali: dev vs prod
Blocco A · Fondamenta Docker · 4 ore
Obiettivi
Stack affidabile (healthcheck + avvio ordinato) e multi-ambiente (override dev,
file prod) senza duplicazioni; configurazione via .env; cache Redis nello stack.
Chiude il Blocco A: da qui l'app è "pronta per avere una filiera".
Agenda
| Ora | Attività |
|---|---|
| 0:00–0:45 | Healthcheck e depends_on con condition: avvio deterministico |
| 0:45–1:30 | Configurazione: variabili, .env vs .env.example (il contratto), profili, file di override; il principio "stessa immagine, config diversa" |
| 1:30–3:30 | Lab 6: healthcheck, .env, Redis, override di sviluppo, compose.prod |
| 3:30–4:00 | Debrief: checkpoint di metà Blocco — cosa è ormai standard e cosa manca (immagini solo locali → Modulo 7) |
Concetti chiave
- dev = bind mount + debug + tool; prod = immagini immutabili + restart + log rotation.
.env.examplecommittato (contratto),.envmai (segreti).- Un servizio senza healthcheck è un servizio di cui non sai nulla.
Materiali
- Lab:
lab/start/CONSEGNA.md→lab/final/(compose a 4 servizi, 3 file, .env)