Come installare Docker su Ubuntu (installazione manuale e template VPS)
Jan 30, 2026
/
Faradilla A.
/
9 min di lettura
Installare Docker su Ubuntu ti permette di usare i container per creare, testare e distribuire applicazioni in un ambiente pulito, coerente e facilmente riproducibile.
Per installare Docker su Ubuntu, assicurati che il tuo sistema utilizzi una versione supportata, come Ubuntu 22.04 LTS o Ubuntu 24.04 LTS. Poi segui i passaggi dell’installazione manuale per configurare i pacchetti necessari, aggiungere la chiave GPG ufficiale di Docker e installare Docker Engine.
Se sei un cliente Hostinger, puoi installare Docker sul tuo VPS Ubuntu in pochi click usando il template VPS preconfigurato, senza dover eseguire manualmente i comandi di installazione.
Continua a leggere per scoprire entrambi i metodi, trovare consigli utili per configurare Docker dopo l’installazione e imparare a risolvere i problemi di configurazione più comuni.
Cosa ti serve per installare Docker su Ubuntu
Prima di installare Docker su Ubuntu, assicurati di soddisfare i seguenti requisiti:
- Familiarità con le basi di Docker, utile per capire cosa stai configurando e perché ogni passaggio è importante.
- Conoscenza di base dei comandi Linux, soprattutto se segui l’installazione manuale, dato che dovrai eseguire diversi comandi nel terminale.
- Una versione supportata di Ubuntu, come Ubuntu 22.04 LTS o Ubuntu 24.04 LTS. Controlla sempre la documentazione ufficiale di Docker per gli ultimi dettagli sulla compatibilità.
- Un sistema con almeno 512 MB di RAM. Per prestazioni più fluide e un utilizzo reale, è consigliabile installare Docker su un sistema con almeno 2 GB di RAM.
Come installare Docker manualmente
Se preferisci un approccio pratico, questa sezione ti guida passo dopo passo nell’installazione manuale di Docker su una distribuzione Ubuntu 24.04. Gli stessi passaggi valgono anche per altre versioni supportate di Ubuntu, come Ubuntu 22.04.
1. Installa tutti i pacchetti necessari
Per iniziare a installare Docker, verifica che il tuo sistema sia aggiornato e che disponga di tutti i pacchetti richiesti.
- Apri il terminale e collegati al tuo VPS tramite SSH. Sostituisci username e your_server_ip con le tue credenziali:
ssh username@your_server_ip
- Aggiorna l’elenco dei pacchetti per assicurarti che il server utilizzi le versioni più recenti dei pacchetti e delle relative dipendenze:
sudo apt update && sudo apt upgrade -y
- Installa i pacchetti necessari per consentire ad apt di usare i repository tramite HTTPS:
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y

2. Aggiungi la chiave GPG ufficiale di Docker
Per garantire l’autenticità e la sicurezza dei pacchetti Docker, devi aggiungere la chiave GPG ufficiale di Docker e configurare il repository dedicato.
- Esegui questo comando curl per aggiungere la chiave GPG di Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

- Aggiungi il repository ufficiale di Docker alle sorgenti APT:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- Aggiorna l’elenco dei pacchetti per includere quelli disponibili nel nuovo repository:
sudo apt update
3. Installa Docker Engine
Ora che i repository necessari sono configurati, puoi procedere con l’installazione di Docker Engine.
- Assicurati che Docker venga installato dal repository ufficiale e non da quello predefinito di Ubuntu:
apt-cache policy docker-ce
- Vedrai un output che indica chiaramente che Docker verrà installato dal repository corretto.

- Esegui quindi questo comando per installare Docker Engine, Docker Community Edition e il runtime containerd, tutti necessari per eseguire i container Docker:
sudo apt install docker-ce docker-ce-cli containerd.io -y
- Infine, verifica che Docker si avvii automaticamente all’avvio del sistema:
sudo systemctl enable docker
4. Controlla che Docker sia installato correttamente
Dopo aver installato Docker, verifica che l’installazione sia andata a buon fine e che il servizio funzioni correttamente.
- Controlla la versione di Docker installata sul sistema:
docker --version
- Ecco l’output che dovresti vedere:

- Usa questo comando per verificare lo stato del servizio Docker:
sudo systemctl status docker
- Dovresti vedere un output che indica chiaramente che Docker è attivo e in esecuzione.

- Premi Q sulla tastiera per uscire da questa schermata di stato.
5. Esegui Docker senza sudo (facoltativo)
Per impostazione predefinita, Docker consente di eseguire i suoi comandi solo come utente root o utilizzando sudo. Questo può risultare scomodo e, in alcuni casi, anche meno sicuro. Se provi a eseguire un comando Docker come utente non root, vedrai un errore simile a questo:

Tuttavia, eseguire Docker senza sudo è preferibile perché velocizza il flusso di lavoro e migliora l’esperienza d’uso. Per questo motivo, ti consigliamo di creare un utente dedicato per usare Docker senza privilegi elevati.
- Aggiungi un nuovo utente se non ne hai già uno. In questo esempio lo chiamiamo new_user:
sudo adduser new_user
- Ti verrà richiesto di impostare una password per il nuovo utente.
- Crea il gruppo docker con questo comando:
sudo groupadd docker
- Aggiungi new_user al gruppo docker:
sudo usermod -aG docker new_user
- Passa all’utente appena creato:
su - new_user
- Verifica che l’utente faccia parte del gruppo docker:
groups
- Ecco l’output che dovresti vedere:

- Esegui ora un semplice comando Docker per verificare che puoi usare Docker senza sudo:
docker run hello-world
- Dovresti visualizzare un output che conferma che Docker funziona correttamente anche come utente non root.

Congratulazioni! Hai installato Docker manualmente su un VPS Ubuntu utilizzando la riga di comando.
Come installare Docker su Ubuntu usando il template VPS di Hostinger
Utilizzare il template VPS preconfigurato di Hostinger è il modo più semplice per installare Docker sul tuo VPS Ubuntu. Se scegli il piano di hosting VPS Docker, il template viene selezionato automaticamente, così puoi iniziare subito a distribuire applicazioni containerizzate.
Se invece utilizzi un piano di VPS hosting standard, nessun problema: puoi comunque installare Docker in pochi Click selezionando manualmente il template. Ecco come fare:
- Accedi a hPanel e vai su VPS → Gestisci accanto al tuo server.
- Dalla dashboard del VPS, apri SO e pannello → Sistema operativo nella barra laterale sinistra.
- Individua la sezione Cambia SO, digita Docker nella barra di ricerca e seleziona il template Docker.

- Segui le istruzioni visualizzate sullo schermo e attendi il completamento del processo di installazione, che in genere richiede circa 10 minuti.
Fatto! Hai installato Docker sul tuo VPS e ora sei pronto a distribuire le tue applicazioni.

Quali sono alcuni consigli per la configurazione di Docker?
Dopo aver installato Docker su Ubuntu, dedica un po’ di tempo a imparare i comandi principali e le configurazioni più utili per sfruttarlo al meglio.
1. Impara i comandi di base di Docker
Inizia familiarizzando con i comandi essenziali di Docker per lavorare con immagini e container. In questo modo potrai cercare, scaricare ed eseguire immagini già pronte come nginx, node o mysql, avviando rapidamente i servizi senza installare nulla manualmente sul sistema.
- Elenca le immagini disponibili:
docker images
- Cerca immagini su Docker Hub:
docker search nginx
- Scarica un’immagine:
docker pull nginx
2. Esegui e gestisci i container
Una volta ottenuta un’immagine, puoi avviare e gestire i container utilizzando i seguenti comandi. L’esempio qui sotto esegue un server NGINX in un container sulla porta 8080. È ideale per testare siti web statici in locale o creare reverse proxy per le tue applicazioni.
- Esegui un container:
docker run -d --name webserver -p 8080:80 nginx
- Avvia il tuo primo container:
docker start webserver
- Ferma un container in esecuzione:
docker stop webserver
- Elenca i container attualmente in esecuzione:
docker ps
3. Crea e condividi le tue immagini
Puoi creare immagini personalizzate utilizzando un Dockerfile e condividerle con altri utenti. Un caso d’uso comune è impacchettare la tua applicazione Node.js, Python o Go in un’immagine riutilizzabile, da distribuire in ambienti diversi o condividere con il tuo team.
- Crea un’immagine partendo dalla directory corrente:
docker build -t my-app .
- Aggiungi un tag all’immagine:
docker tag my-app yourusername/my-app:latest
- Invia l’immagine a Docker Hub:
docker push yourusername/my-app:latest
4. Pulisci i componenti che non usi più
Elimina le risorse Docker che non ti servono più per evitare di occupare spazio inutilmente sul disco. Questo ti aiuta a liberare risorse e a ridurre il disordine causato da test o build temporanee.
- Rimuovi le immagini Docker inutilizzate:
docker image prune
- Elimina i container arrestati:
docker container prune
- Rimuovi volumi e reti non più utilizzati:
docker volume prune docker network prune
5. Usa Docker Compose per le app multi-container
Docker Compose ti consente di definire e gestire ambienti multi-servizio utilizzando un unico file docker-compose.yml.
- Esempio: esegui rapidamente WordPress come container Docker per test in locale:
version: '3.8'
services:
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: wordpress
MYSQL_USER: wp_user
MYSQL_PASSWORD: wp_pass
MYSQL_ROOT_PASSWORD: example
volumes:
- db_data:/var/lib/mysql
web:
image: wordpress
restart: always
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wp_user
WORDPRESS_DB_PASSWORD: wp_pass
depends_on:
- db
volumes:
db_data:- Avvia tutti i servizi:
docker-compose up -d
6. Crea ambienti di sviluppo isolati
Usa Docker per evitare di appesantire il sistema con più versioni di linguaggi o dipendenze diverse. Questo approccio è ideale per testare pacchetti, scrivere script o sviluppare applicazioni in un ambiente isolato, senza modificare la configurazione del sistema host.
- Esempio: usa Docker per avviare un ambiente Node.js senza installare Node in locale:
docker run -it --rm node:18 bash
7. Automatizza build e test in CI/CD
Docker è ampiamente supportato da strumenti CI come GitHub Actions, GitLab CI/CD e Jenkins. Puoi containerizzare la tua applicazione ed eseguirla in modo coerente negli ambienti di sviluppo, staging e produzione.
- Esempio: utilizza un’immagine Docker nella tua pipeline di GitHub Actions per automatizzare i test:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: docker build -t my-app .
- run: docker run my-app npm test8. Ospita server web o API in locale
Puoi eseguire server web completi o API all’interno di container Docker per testare le tue applicazioni senza distribuirle all’esterno. Questo approccio è ideale per gli sviluppatori front-end che devono servire risorse statiche o testare domini locali senza configurare un server di sviluppo completo.
- Esempio: esegui un server Apache di base in locale:
docker run -d -p 8080:80 httpd
Risoluzione dei problemi comuni di installazione di Docker
Installare Docker su Ubuntu è in genere semplice, ma in base alla configurazione del sistema, ai permessi utente o all’ambiente in uso possono verificarsi alcuni errori. Di seguito trovi i problemi più comuni, con soluzioni pratiche e comandi per risolverli rapidamente.
1. Il daemon Docker non è in esecuzione
Un messaggio di errore come “Cannot connect to the Docker daemon” indica in genere che il servizio Docker non è attivo.
- Avvia il servizio Docker:
sudo systemctl start docker
- Abilitalo all’avvio del sistema:
sudo systemctl enable docker
- Controlla lo stato del daemon Docker:
sudo systemctl status docker
Se Docker continua a non avviarsi, verifica i log utilizzando journalctl:
journalctl -u docker.service
Cerca eventuali errori, come file di configurazione mancanti, conflitti di porte o problemi con il driver di archiviazione.
2. Impossibile connettersi al socket Docker
Se visualizzi l’errore “Got permission denied while trying to connect to the Docker daemon socket”, è probabile che si tratti di un problema di autorizzazioni utente.
- Verifica se il tuo utente fa parte del gruppo docker:
groups
- Aggiungi il tuo utente al gruppo docker:
sudo usermod -aG docker user
Dopodiché, esci e accedi nuovamente con quell’utente.
- Riavvia il servizio Docker:
sudo systemctl restart docker
Se il problema persiste, potrebbe essere necessario intervenire sulle autorizzazioni di Docker.
3. Problemi con il repository e l’installazione
Se riscontri difficoltà nell’aggiungere il repository APT di Docker o nell’installare i pacchetti, le cause più comuni possono essere:
- URL del repository non corretto
- Dipendenze mancanti
- Versione di Ubuntu non supportata
Assicurati di aver aggiunto il repository corretto eseguendo questi comandi:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
Se apt update restituisce errori, controlla l’output per individuare voci malformate o problemi relativi alla chiave GPG.
4. I container in esecuzione non rispondono
Se un container si avvia ma non si comporta come previsto, prova i passaggi seguenti per individuare il problema.
- Visualizza i log del container:
docker logs container_name
- Controlla lo stato di salute del container, se è stato definito un health check:
docker inspect --format='{{json .State.Health}}' container_name- Riavvia il container:
docker restart container_name
In alternativa, se utilizzi un VPS Hostinger, puoi chiedere all’assistente AI Kodee di controllare i log del container. È sufficiente scrivere, ad esempio: “Puoi controllare i log del container [nome_container]?”

5. Problemi con il firewall e la rete
Docker utilizza diverse porte interne. Se sul sistema è attivo un firewall, come Uncomplicated Firewall (UFW), alcune di queste porte potrebbero essere bloccate.
- Consenti il traffico Docker tramite UFW:
sudo ufw allow 2375/tcp sudo ufw allow 2376/tcp sudo ufw allow 2377/tcp sudo ufw allow 7946/tcp sudo ufw allow 7946/udp sudo ufw allow 4789/udp
- Verifica se Docker riesce a risolvere correttamente il DNS:
docker run busybox nslookup google.com
Se il comando non restituisce risultati, la rete del container potrebbe non essere configurata correttamente.
- Ricrea la rete bridge predefinita:
docker network rm bridge docker network create --driver bridge bridge
Gestione del firewall con Kodee
Puoi anche chiedere a Kodee di configurare nuove regole firewall sul tuo VPS. Ad esempio, digita: “Imposta nuove regole firewall che aprono le porte 2375, 2376, 2377, 7946 TCP e 7946, 4789 UDP a qualsiasi indirizzo IP.”
6. Prestazioni lente di Docker
Se Docker risulta lento, ad esempio durante il download delle immagini o nell’esecuzione dei container, prova i seguenti passaggi per individuare la causa.
- Controlla lo spazio disponibile su disco:
df -h
- Verifica l’utilizzo delle risorse Docker:
docker system df
- Individua container o volumi che occupano molto spazio:
docker ps -s docker volume ls
Se nessuno dei passaggi precedenti risolve il problema, prova a rimuovere container, reti, immagini e cache di build inutilizzati per migliorare le prestazioni:
docker system prune -a
7. Errori di sicurezza o AppArmor
In alcune configurazioni di Ubuntu, Docker potrebbe non riuscire ad avviare i container a causa di conflitti con moduli di sicurezza come AppArmor.
- Controlla se sono presenti blocchi di AppArmor:
dmesg | grep apparmor
- Disattiva temporaneamente AppArmor per un container:
docker run --security-opt apparmor=unconfined your_image
Tieni presente che disabilitare AppArmor non è consigliato in ambienti di produzione. Se scegli di farlo, assicurati di non disattivare involontariamente importanti funzionalità di sicurezza del kernel.
Se questi errori continuano a verificarsi, verifica i log di sistema nel file /var/log/syslog.
E adesso?
Installare Docker su Ubuntu ti offre la flessibilità di distribuire, testare e rilasciare software con meno complicazioni, sia che tu stia eseguendo applicazioni in locale sia che tu stia gestendo carichi di lavoro in produzione.
Tuttavia, l’installazione è solo il primo passo. Per sfruttare davvero Docker al massimo, esplora come i container possono integrarsi nel tuo flusso di lavoro a lungo termine:
- Scopri casi d’uso reali di Docker, come l’esecuzione di applicazioni web, database o pipeline CI, e prendi spunto per applicarli ai tuoi progetti.
- Usa docker exec per interagire con i container in esecuzione ed eseguire comandi direttamente per il debug, la configurazione o aggiornamenti in tempo reale, senza dover riavviare nulla.
- Gestisci i segreti Docker in modo sicuro, evitando password o token hardcoded e passando i dati sensibili in modo protetto durante la fase di build o di esecuzione.
- Configura Docker Swarm per l’orchestrazione per scalare le tue applicazioni oltre il singolo container e gestire in modo efficiente un cluster multi-nodo con bilanciamento del carico integrato.
Tutti i contenuti dei tutorial presenti su questo sito web sono soggetti ai rigorosi standard editoriali e ai valori di Hostinger.