Installare Docker su Ubuntu (4 semplici modi)
Pubblicato: 2022-12-05Docker è uno strumento popolare per lo sviluppo e la distribuzione di software in pacchetti noti come contenitori. Ubuntu è una delle distribuzioni Linux più popolari ed è un sistema operativo ben supportato da Docker.
L'installazione di Docker su Ubuntu crea una piattaforma ideale per i tuoi progetti di sviluppo, utilizzando macchine virtuali leggere che condividono il kernel del sistema operativo Ubuntu. Questo tutorial ti farà iniziare spiegando 4 modi per farlo accadere.
Ulteriori informazioni su Docker
Docker aiuta a rendere le applicazioni portatili consentendo di crearle ed eseguirle su qualsiasi host Docker. Un'immagine del contenitore può essere utilizzata senza modifiche ovunque sia disponibile Docker, dal laptop al cloud. Ciò semplifica l'esperienza dello sviluppatore eliminando le differenze tra gli ambienti di runtime. Il formato contenitore è anche facile da distribuire su più macchine fisiche, consentendo di scalare facilmente le applicazioni in risposta al cambiamento della domanda.
Docker include tutto ciò di cui hai bisogno per creare ed eseguire immagini di container, sia che provengano da Docker Hub e altri registri pubblici, sia che provengano dai tuoi Dockerfile.
Prepararsi per installare Docker su Ubuntu
Puoi installare l'ultima versione di Docker su Ubuntu versioni 18.04, 20.04, 21.10 e 22.04. Sono supportate le architetture x64_64/AMD64, ARMhf, ARM64 e S390x.
Esistono diversi modi per installare Docker e la tua scelta dipenderà dalla funzionalità di cui hai bisogno e dal tuo approccio preferito alla gestione dei pacchetti. Imparerai tutte le opzioni possibili in questa guida.
Selezione di un sapore Docker
Docker su Linux era tradizionalmente solo terminale. Un'installazione funzionante comprende Docker Engine, un demone che esegue i container e l'interfaccia della riga di comando (CLI) docker
per l'interazione con il demone.
Docker Desktop è un modo alternativo per utilizzare Docker. Storicamente disponibile solo su Windows e Mac, è stato lanciato per Linux nel maggio 2022. Docker Desktop su Ubuntu richiede un processore AMD64 e Ubuntu 21.10 o 22.04. Fornisce un'interfaccia grafica per la gestione dei container, un cluster Kubernetes integrato e il supporto per estensioni di terze parti. Docker Desktop offre anche la docker
e le CLI di Docker Compose.
Docker Desktop è diverso da Docker Engine in quanto utilizza una macchina virtuale per eseguire i contenitori (motivo per cui Docker Desktop è richiesto per gli utenti Windows e MacOS). Sebbene sia possibile utilizzare entrambe le versioni fianco a fianco su Ubuntu, potresti riscontrare conflitti tra le versioni della CLI docker
. È meglio sceglierne uno e attenersi ad esso. Scegli Docker Engine se sei a tuo agio nel tuo terminale e desideri il miglior supporto e le migliori prestazioni. La VM di Docker Desktop la rende leggermente più pesante, ma è la scelta migliore se desideri un'interfaccia utente integrata o prevedi di utilizzare Kubernetes.
Installazione di Docker Engine su Ubuntu
Docker Engine è il modo standard per eseguire Docker su Ubuntu. Funziona con tutte le versioni e gli ambienti supportati, da una macchina desktop Ubuntu locale al tuo host cloud Ubuntu Server. Assicurati di eseguire una versione di Ubuntu 18.04 o successiva prima di continuare.
Docker Engine ha 3 diversi metodi di installazione:
- Un repository
apt
ufficiale di Ubuntu - Un pacchetto Debian autonomo (
.deb
) - Uno script di installazione automatica
L'opzione 1, il repository apt
di Ubuntu, è la più comunemente usata. Aggiunge Docker all'elenco dei pacchetti in modo da poter installare facilmente gli aggiornamenti futuri eseguendo apt upgrade
. L'opzione 2 non supporta gli aggiornamenti automatici, ma è ideale per l'installazione di Docker su sistemi offline con air gap. Lo script di installazione automatica è il metodo più semplice per iniziare, ma è configurato solo per uso di sviluppo. Docker sconsiglia di utilizzarlo in ambienti di produzione.
Usa il repository apt
quando lavori con un sistema di produzione, vuoi aggiornamenti facili o hai bisogno di usare lo stesso meccanismo in tutti gli ambienti.
Utilizza lo script di installazione automatica se desideri un'esperienza di configurazione rapida mentre fai esperimenti con Docker sul tuo computer.
1. Installazione di Docker utilizzando il repository apt
Docker pubblica i pacchetti nel proprio repository apt
. Dovrai aggiungere questo repository all'elenco delle fonti di apt
, altrimenti l'installazione di apt
non sarà in grado di trovare i pacchetti Docker.
Inizia aggiornando l'elenco dei pacchetti esistenti e installando alcune dipendenze per i seguenti passaggi. Gli strumenti ca-certificates
, curl
, gnupg
e lsb_release
verranno utilizzati per scaricare i dettagli del repository apt
Docker corretti e la chiave di firma per il tuo sistema. Anche se probabilmente hai già questi pacchetti, non fa male assicurarti che siano disponibili.
$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release
Successivamente, registra il portachiavi GPG di Docker con apt. Ciò consentirà ad apt
di convalidare i pacchetti Docker installati.
$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg
Il comando curl
scarica la chiave GPG di Docker per Ubuntu, la riconverte nella codifica OpenGPG standard e la salva nella directory del portachiavi di apt. chmod
viene utilizzato per impostare i permessi sul file keyring in modo che apt
lo rilevi in modo affidabile.
Ora puoi aggiungere l'origine del pacchetto Docker al tuo sistema. Esegui il seguente comando:
$ 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
Questo utilizza la sostituzione della shell per rilevare automaticamente l'architettura del tuo sistema, come AMD64 o ARM64, e scaricare l'elenco dei pacchetti appropriato. Verrà verificato utilizzando la chiave GPG aggiunta in precedenza. Il repository viene aggiunto come nuovo elenco di pacchetti all'interno della apt /etc/apt/sources.list.d directory.
Aggiorna di nuovo gli elenchi dei pacchetti in modo che apt
sappia che esistono i pacchetti Docker:
$ sudo apt update
Ora puoi utilizzare il comando apt install
per aggiungere i componenti di Docker al tuo sistema. Verrà installata l'ultima versione di Docker Community Edition (CE). Ci sono tre pacchetti da installare:
-
docker-ce
: il demone del motore Docker. -
docker-ce-cli
: la CLI Docker con cui interagirai. -
containerd.io
: il runtime del contenitore noto come containerd che avvia ed esegue i contenitori.
$ sudo apt install docker-ce docker-ce-cli containerd.io
2. Installazione di Docker utilizzando il pacchetto Debian
Il pacchetto .deb
ufficiale è semplice da configurare ma dovrai scaricare e installare manualmente ogni nuova versione. I pacchetti sono ospitati su un semplice file server. Per prima cosa vai alla pagina delle note di rilascio di Docker per trovare l'ultimo numero di versione disponibile, ad esempio 20.10.20. Successivamente, vai alla pagina GitHub di containerd per controllare anche il suo numero di versione. Sembrerà 1.6.8.
Ora puoi eseguire la seguente sequenza di comandi per scaricare il set di pacchetti corretto per la tua piattaforma. Sostituisci <DOCKER_VERSION>
e <CONTAINERD_VERSION>
rispettivamente con i numeri di versione Docker e containerd correnti.
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce-cli.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/containerd.io_<CONTAINERD_VERISON>-1_amd64.deb -o containerd.deb
Puoi anche scaricare i file e ispezionare tutte le versioni disponibili visitando l'elenco delle directory per la tua versione di Ubuntu nel tuo browser.
Dopo aver scaricato i pacchetti Docker CE, CLI e containerd, utilizza il seguente comando per installarli:
$ sudo apt install ./docker-ce.deb ./docker-ce-cli.deb ./containerd.deb
Regola i nomi dei file se hai scaricato manualmente i pacchetti senza utilizzare lo script fornito sopra.
3. Installazione di Docker utilizzando lo script di installazione
Lo script pratico di Docker automatizza l'installazione di tutti i componenti Docker. Non è interattivo, quindi puoi sederti e aspettare mentre il tuo sistema è pronto per te.
Per prima cosa scarica lo script:
$ curl -fsSL https://get.docker.com -o get-docker.sh
Ora esegui lo script con i privilegi di root:
$ sudo sh get-docker.sh Executing docker install script ...
Attendere che lo script raggiunga il completamento. Dovresti vedere un messaggio di conferma che mostra che Docker è installato.
La sceneggiatura è pensata per essere una soluzione valida per tutti. Non puoi personalizzare ciò che fa senza modificare direttamente la fonte dello script. Inoltre, non è progettato per eseguire gli aggiornamenti di Docker, in quanto non porterà le dipendenze alle versioni più recenti.
Assicurarsi che il motore Docker funzioni su Ubuntu
Qualunque sia il metodo di installazione che hai utilizzato, dovresti assicurarti che tutto funzioni avviando un contenitore:
$ sudo docker run hello-world
Vedrai che il client Docker estrae hello-world:image
sulla tua macchina, dal repository Docker Hub:
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 2db29710123e: Pull complete Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625 Status: Downloaded newer image for hello-world:latest
Verrà quindi avviato automaticamente un nuovo contenitore. L'immagine iniziale "hello-world" è configurata per eseguire un semplice comando che emette alcune informazioni di base su Docker e poi esce immediatamente:
Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
Vedere l'output mostrato sopra significa che Docker è pronto per l'uso. Il daemon ha estratto correttamente l'immagine hello-world:latest da Docker Hub e ha avviato un contenitore che la utilizza. Tutto, dalla linea "Hello from Docker" in poi, è stato emesso dal processo all'interno del contenitore.
Impostazione delle autorizzazioni del motore Docker su Ubuntu
Una nuova installazione del motore Docker in genere richiede i privilegi di root per eseguire i comandi della CLI docker
. Devi prefissare ogni comando con sudo
, il che è scomodo.
Puoi evitare questo requisito aggiungendoti al gruppo docker
dopo aver installato Docker Engine seguendo i passaggi precedenti. Questa modifica facoltativa ti dà le autorizzazioni per eseguire i comandi docker
come utente normale, senza sudo
, che semplifica la tua esperienza CLI.
Assicurati che il gruppo utenti docker
esista:
$ sudo groupadd docker
Quindi aggiungi te stesso ad esso:
$ sudo usermod -aG docker $USER
Se in precedenza hai eseguito qualsiasi comando docker
con sudo
, dovrai correggere le autorizzazioni sulla tua directory ~/.docker
:
$ sudo chown $USER:$USER /home/$USER/.docker -R $ sudo chmod g+rwx $HOME/.docker -R
Ciò garantisce che il proprio account utente sia autorizzato a leggere e scrivere file nella directory.
Disconnettersi dal sistema e riconnettersi in modo che la nuova appartenenza al gruppo abbia effetto. Prova a eseguire un comando docker
senza sudo
:
$ docker run hello-world
Questo passaggio post-installazione completa il processo di installazione di Docker su Ubuntu. Il demone è già configurato per l'avvio automatico, quindi non è necessario configurare manualmente un servizio. Se stai pianificando un'installazione avanzata, fai riferimento al manuale dell'utente di Docker per istruzioni su come configurare rete personalizzata, registrazione e gestione dell'archiviazione del volume.
Aggiunta di Docker Compose all'installazione di Ubuntu
Docker Compose è un popolare strumento complementare Docker che semplifica il lavoro con applicazioni che utilizzano più contenitori. Mentre l'interfaccia a riga di comando docker
si rivolge a un solo container con ogni comando, docker compose
può avviare e arrestare diversi container con ogni azione. Ciò semplifica la gestione dei sistemi in cui sono disponibili servizi di front-end, back-end e database separati.
Docker Compose è ora disponibile come parte della docker
CLI. Il plug-in Compose V2 è incluso quando si utilizza lo script di installazione ufficiale per installare Docker. È disponibile anche in apt
se hai utilizzato quel metodo:
$ sudo apt install docker-compose-plugin
In alternativa, puoi scaricare l'ultimo archivio .deb
e installarlo manualmente:
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb -o docker-compose-plugin.deb $ sudo apt install -i ./docker-compose-plugin.deb
Verifica che Compose funzioni provando il comando docker compose version
:
$ docker compose version Docker Compose version v2.6.0
Installazione di Docker Desktop su Ubuntu
Mentre Docker Engine è limitato a un'esperienza solo CLI, Docker Desktop fornisce un'interfaccia di gestione grafica, supporto Kubernetes integrato ed estensioni di terze parti facoltative che possono aiutare a semplificare i flussi di lavoro del contenitore. È un'ottima scelta quando cerchi facilità d'uso sulla tua postazione di lavoro.
Per installare Docker Desktop, installa prima alcune dipendenze usando apt
:
$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release
Successivamente, esegui il seguente set di comandi per aggiungere il repository apt
di Docker. Sebbene Docker Desktop non sia incluso nel repository, i pacchetti al suo interno sono indicati come dipendenze dall'archivio Debian di Desktop.
$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /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
Il comando curl
scarica la chiave GPG di Docker per Ubuntu, la riconverte nella codifica OpenGPG standard e la salva nella directory del portachiavi apt
. chmod
viene utilizzato per impostare i permessi sul file keyring in modo che apt
lo rilevi in modo affidabile.
Scarica l'archivio Docker Desktop Debian dal link nella documentazione. Ciò fornirà l'ultima versione stabile di Docker Desktop per Linux. Utilizzare apt
per installare il pacchetto, sostituendo nel numero di versione scaricato:
$ sudo apt install ./docker-desktop-4.11.0-amd64.deb
Docker Desktop verrà ora visualizzato nel tuo programma di avvio delle app. Usa il tuo programma di avvio per avviare Docker Desktop e aprire l'interfaccia utente. Sarai in grado di eseguire i comandi docker
, docker docker compose
e kubectl
nel tuo terminale. L'applicazione aggiunge anche un menu alla barra delle applicazioni che mostra lo stato corrente di Docker Desktop e consente di eseguire alcune azioni rapide.
Ti verrà chiesto di accettare un contratto di servizio la prima volta che esegui Docker Desktop. Premi il pulsante Accetta se acconsenti e attendi che Docker Desktop avvii la sua macchina virtuale.
Dopo alcuni istanti, la dashboard verrà caricata. Fornisce scorciatoie per creare nuovi contenitori da immagini popolari, evitando lunghi comandi da terminale.
DevKinsta: Docker Desktop per WordPress
Le soluzioni specializzate costruite sulla base di Docker forniscono un'esperienza ancora più semplice per tecnologie specifiche. DevKinsta è uno strumento di sviluppo locale gratuito per la creazione di temi e plug-in WordPress che utilizza Docker per isolare e proteggere completamente i tuoi siti WordPress. Rende semplice e veloce l'avvio e la personalizzazione di un nuovo progetto WordPress senza configurare i server da soli. Una volta che siete pronti, potete passare direttamente alla piattaforma Kinsta per implementare il vostro sito live.
Puoi installare DevKinsta su MacOS, Windows e Ubuntu.
Riepilogo
Docker è il modo in cui la maggior parte degli sviluppatori inizia a utilizzare i contenitori. Puoi facilmente installare Docker sul tuo sistema Ubuntu, sia come Docker Engine che come nuovo Docker Desktop. Dopo aver installato Docker, sarai completamente attrezzato per creare ed eseguire container, semplificando lo sviluppo e riducendo le discrepanze tra gli ambienti.
Se stai sviluppando temi e plugin WordPress, DevKinsta può semplificare la creazione di un ambiente di sviluppo locale e la distribuzione del tuo sito.