Cos'è Docker spiegato in modo semplice
Il problema reale che risolve, cos'è un container, e i comandi base per iniziare.
Docker impacchetta un'applicazione insieme esattamente a ciò che le serve per funzionare, garantendo che si comporti allo stesso modo su qualsiasi computer su cui viene eseguita.
Il problema che risolve
La frase classica è "sul mio computer funziona" — uno sviluppatore crea qualcosa che funziona perfettamente sul proprio computer, ma fallisce sul server o sul computer di qualcun altro, a causa di sottili differenze di configurazione. Docker impacchetta TUTTO l'occorrente insieme (il programma, le sue dipendenze esatte, la configurazione) perché questo smetta di succedere.
Container: l'unità base di Docker
Un container è un'istanza in esecuzione di un'"immagine" (il pacchetto completo) — puoi creare, fermare ed eliminare container costantemente senza influire sull'immagine originale da cui provengono.
Comandi base
docker pull nginx
docker run nginx
docker ps
pull scarica un'immagine; run la esegue
come container; ps elenca i container attivi.
Consiglio: Docker non sostituisce una macchina virtuale — trattiamo la differenza reale tra i due nel nostro articolo dedicato.
Domande frequenti
Docker è la stessa cosa di una macchina virtuale?
No, anche se svolgono funzioni di isolamento simili. Docker è più leggero e veloce perché condivide il kernel del sistema operativo host, mentre una macchina virtuale simula un computer completo e indipendente.
Devo saper programmare per usare Docker?
Aiuta, ma non è strettamente necessario per usare container già creati da altri — è più rilevante se vuoi creare le tue immagini da zero.