Docker ha cambiato il modo in cui installiamo e gestiamo i servizi su un server. Se hai mai passato un pomeriggio intero a litigare con dipendenze, versioni di PHP e configurazioni che si pestavano i piedi a vicenda, sai di cosa parlo.
In questa guida ti mostro come installare Docker Engine e Docker Compose sulle principali distribuzioni Linux: Debian, Fedora, RHEL, CentOS e Arch Linux. Partiamo da una rapida panoramica dei concetti base, per poi passare subito ai comandi.
Cos’è Docker?
Docker è una piattaforma open source che esegue applicazioni in ambienti isolati chiamati container. Ogni container include tutto il necessario per far girare un’app — software, librerie, configurazioni — senza toccare il sistema operativo principale.
Quattro concetti ti bastano per seguire questa guida:
- Immagine: un modello pronto all’uso per creare un container (es. un server web, un database).
- Container: un’istanza in esecuzione di un’immagine. La stessa immagine può generare più container indipendenti.
- Volume: uno spazio di archiviazione persistente all’esterno del container, dove salvare database, configurazioni e file utente. Senza volumi, i dati spariscono insieme al container.
- Network: una rete virtuale che permette ai container di comunicare tra loro senza esporli direttamente su Internet.
Quando un’applicazione è composta da più servizi (es. web + database), si usa Docker Compose: un file YAML (compose.yml) che definisce immagini, porte, volumi e variabili di tutti i container, e li avvia con un solo comando:
| |
Detto questo, passiamo all’installazione.
Installazione di Docker su Linux
Vediamo quindi come installare Docker sulle principali distribuzioni Linux.
Debian e derivate
Prima di procedere è consigliato rimuovere eventuali versioni precedenti o pacchetti Docker installati tramite i repository della distribuzione.
Esegui sul terminale:
| |
Installa i pacchetti necessari:
Crea la directory per le chiavi GPG:
| |
Scarica la chiave ufficiale Docker:
Imposta i permessi corretti:
| |
Aggiungi il repository ufficiale Docker:
Aggiorna nuovamente i repository:
| |
Installa Docker Engine e Docker Compose confermando l’installazione quando richiesto:
| |
Red Hat e derivate
Questa procedura è valida per Fedora, Red Hat Enterprise Linux (RHEL), AlmaLinux, Rocky Linux e le relative distribuzioni derivate.
Prima di procedere rimuovi eventuali vecchie installazioni:
Installa i pacchetti necessari:
| |
Aggiungi il repository ufficiale Docker.
Nota: Docker distribuisce un repository dedicato per Fedora e RHEL, mentre CentOS, AlmaLinux e Rocky Linux utilizzano il repository compatibile con CentOS.
Per Fedora:
| |
Per RHEL:
| |
Per CentOS:
| |
Installa Docker Engine e Docker Compose:
| |
Arch Linux e derivate
Su Arch Linux Docker è disponibile direttamente nei repository ufficiali della distribuzione.
Digita sul terminale:
| |
Configurazione post installazione
Abilita Docker all’avvio del sistema ed avvialo:
| |
Verifica che il servizio sia correttamente in esecuzione:
| |

Utilizzare Docker senza “sudo”
Per impostazione predefinita Docker richiede privilegi amministrativi e i comandi devono essere eseguiti tramite sudo.
Per permettere al tuo utente di eseguire i comandi Docker senza utilizzare ogni volta sudo, aggiungilo al gruppo docker:
| |
⚠️ Attenzione: L’appartenenza al gruppo
dockerequivale, nella pratica, ad avere privilegi amministrativi sul sistema. Aggiungi solamente utenti di cui ti fidi.
Per rendere effettive le modifiche è necessario effettuare il logout dalla sessione corrente:
| |
Dopo aver effettuato nuovamente l’accesso, verifica che Docker sia stato installato correttamente eseguendo:
| |
L’output dovrebbe essere simile al seguente:

Container di prova
Esegui il classico container di test fornito da Docker:
| |
Se tutto è andato a buon fine, Docker scaricherà automaticamente l’immagine hello-world, creerà un container temporaneo e mostrerà un messaggio di conferma.

Da questo momento potrai installare ed eseguire qualsiasi applicazione distribuita tramite Docker e Docker Compose.
In sintesi
Docker è uno di quegli strumenti che, una volta provati, è difficile abbandonare: isola i servizi, semplifica gli aggiornamenti, elimina i conflitti tra dipendenze e rende il server molto più ordinato. In questa guida abbiamo visto i concetti base — immagini, container, volumi e network — e installato Docker Engine e Docker Compose su Debian, Fedora, RHEL, CentOS e Arch Linux, con la configurazione per l’uso quotidiano senza sudo.
Il passo successivo è mettere Docker al lavoro con un servizio reale. Se non sai da dove iniziare, tieni d’occhio il blog: nelle prossime guide vedremo come installare i primi servizi self-hosted proprio con Docker Compose.
