In questo progetto, vi mostreremo come installare e testare Docker sul Raspberry Pi o su qualsiasi altra board o computer che faccia uso del sistema operativo GNU/Linux.

Docker è infatti uno strumento incredibilmente potente che permette di eseguire software all’interno di container, uno spazio isolato dal resto del sistema, che condivide con quest’ultimo solo il kernel.

Eseguire le applicazioni in un container significa che quest’ultime non potranno accedere a nulla di cui Docker, in fase di esecuzione, non disponga l’accesso; questo può aiutare molto con la sicurezza e la gestione delle risorse (poiché ad esempio possiamo limitare l’utilizzo di determinate risorse hardware da parte di un container).

Docker ti consente di distribuire software sui dispositivi in modo semplice, poiché tutto è incluso nel contenitore che il runner scarica.

Meglio di tutti, Docker fa tutto questo mantenendo un overhead molto basso, grazie al fatto che un container docker non è una macchina virtuale, in quanto condivide il kernel con il sistema host e non è totalmente isolato da quest’ultimo. Avere un basso overhead ci permette quindi di poterlo sfruttare anche su una macchina a risorse limitate come il Raspberry Pi.

Qui di seguito ti guideremo nel processo di installazione di Docker sul tuo Raspberry Pi, oltre a mostrarti come testare se funziona correttamente, ma puoi tranquillamente seguire questa guida per installare Docker anche su altre board o macchine che eseguano GNU/Linux, in particolare daremo per scontato che tu stia usando una distribuzione basata su Debian (come Debian stessa o Ubuntu).

Requisiti

  • Raspberry PI 1 Modello B, ma consigliamo già qualcosa di più performante e recente o qualsiasi altra board/macchina con più di 512 MB di RAM;
  • Scheda SD / Micro-SD o migliore, con almeno 8 GB di spazio libero
  • Connettività internet via Ethernet o Wi-Fi

Installazione di Docker

Grazie a uno script di installazione ben fatto, sviluppato dal team Docker, il processo di installazione sarà incredibilmente semplice.

È possibile completare i seguenti passaggi utilizzando una connessione SSH al Raspberry Pi, ma se preferisci puoi farlo direttamente aprendo un terminale su quest’ultimo.

1. Il nostro primo compito è aggiornare tutti i nostri pacchetti esistenti prima di procedere all’installazione di Docker.

Possiamo aggiornare tutti i pacchetti esistenti eseguendo i seguenti due comandi concatenati sul Raspberry Pi:

sudo apt update && sudo apt upgrade -y

2. Con il nostro Raspberry Pi completamente aggiornato, ora possiamo andare avanti e installare Docker.

Fortunatamente per noi, Docker ha reso questo processo incredibilmente veloce e semplice fornendo uno script bash che installa tutto l’occorrente per noi.

È possibile scaricare ed eseguire lo script di installazione ufficiale di Docker eseguendo il seguente comando.

curl -sSL https://get.docker.com | sh

Questo comando scaricherà ed eseguirà lo script direttamente nel terminale. In genere sarebbe meglio non farlo (il consiglio è sempre quello di verificare il contenuto degli script prima di eseguirli). Tuttavia, Docker è una fonte affidabile e possiamo ben sperare che tutto fili lisci senza brutte sorprese.

Se non volete eseguirlo direttamente senza prima verificarne il contenuto, potete andare direttamente su get.docker.com con un qualsiasi web browser per visualizzare lo script.

Questo script può richiedere diverso tempo per poter completare la procedura di installazione, in quanto rileva e installa automaticamente tutto ciò che ha bisogno per eseguire Docker sul Raspberry Pi o comunque sia sul vostro sistema operativo.

Configurazione del proprio utente per Docker

Dobbiamo fare un leggero aggiustamento al nostro utente prima di poter iniziare a utilizzare Docker senza problemi.

Questo ha a che fare con il modo in cui il sistema di gestione dei permessi di Linux funziona con Docker. Per impostazione predefinita, solo l’utente docker può interagire con Docker, ma c’è un modo per aggirarlo.

1. Una volta che Docker è stato installato sul vostro Raspberry Pi, ci sono un paio di cose che dobbiamo fare.

Affinché un altro utente sia in grado di interagire con Docker, è necessario che venga aggiunto al gruppodocker.

Conseguentemente, il nostro prossimo passo è quello di aggiungere il nostro attuale utente al gruppodocker. Per fare ciò, utilizzeremo il comando usermod, come mostrato di seguito e utilizzeremo la variabile d’ambiente “$USER” per recuperare il nome dell’attuale utente che sta eseguendo il comando (banalmente, il vostro utente).

sudo usermod -aG docker $USER

Se non aggiungiamo il nostro utente al gruppo, non saremo in grado di interagire con Docker e dovremo per forza eseguirlo come utente root.

2. Dal momento che abbiamo apportato alcune modifiche al nostro utente, ora avremo bisogno di disconnetterci e di accedere per farle applicare.

È possibile effettuare il logout eseguendo il seguente comando nel terminale.

logout

3. Una volta ri-effettuato l’accesso, è possibile verificare che il gruppo docker sia stato aggiunto correttamente all’utente digitando il seguente comando:

groups

Questo comando elencherà tutti i gruppi di cui l’utente corrente è parte. Se tutto ha funzionato come dovrebbe, il gruppodocker dovrebbe essere elencato nella risposta del comando.

Testare l’installazione di Docker su Raspberry Pi

Con Docker ora installato sul nostro Raspberry Pi, dovremmo essere in grado di andare avanti e testare per assicurarci che funzioni.

1. Per verificare se Docker sta funzionando correttamente, andremo avanti ed eseguiremo il seguente comando sul nostro Pi.

Questo comando dirà a Docker di scaricare, configurare ed eseguire un contenitore chiamato “hello-world“.

docker run hello-world

2. Se avete installato con successo Docker sul vostro Raspberry Pi, dovreste visualizzare il seguente messaggio:

Hello from Docker!
This message shows that your installation appears to be working correctly.

È tutto! Ora puoi sfruttare Docker sul tuo Raspberry Pi ed eseguire qualsiasi software disponibile in giro.

I container Docker sono un ottimo modo per distribuire rapidamente il software sul tuo dispositivo, lo abbiamo sfruttato recentemente in questa guida che spiega come installare NextCloud in pochi e semplici passaggi.