Il container come packaging standard. Perché «funziona sul mio computer» non è più un'argomentazione valida.
Categoria · DevOps & Infra
Cos'è Docker.
Docker impacchetta un'applicazione insieme a tutte le sue dipendenze — runtime, librerie, configurazione — in un'immagine autosufficiente. Questa immagine gira in modo identico su qualsiasi host, che sia un laptop, un runner di CI o un server di produzione.
A differenza di una macchina virtuale, un container non porta con sé un sistema operativo proprio, ma condivide il kernel dell'host. Questo lo rende leggero: secondi anziché minuti all'avvio, megabyte anziché gigabyte.
Perché containerizziamo con coerenza.
Ogni prodotto che costruiamo e gestiamo gira in un container. Così l'ambiente diventa parte del codice: la frase "sul mio computer funziona" non è più un argomento, perché l'ambiente è ovunque lo stesso.
Questo riduce lo sforzo di onboarding per i nuovi sviluppatori a un "docker compose up" e rende i deploy riproducibili. È esattamente ciò che ci serve per catene operative tracciabili e verificabili.
Dove sta il limite.
Docker risolve l'impacchettamento, non l'orchestrazione. Non appena più container devono scalare su più macchine, girare in modo resiliente ai guasti ed essere sostituiti automaticamente, serve un livello superiore — di solito Kubernetes.
Per un singolo server con qualche servizio basta Docker Compose. Sono il carico e i requisiti di disponibilità a decidere se serve di più, non altro.

