Come installare Docker su Raspbian di Raspberry Pi

3 minuti di lettura
SCOPI DELLA GUIDA:
  • Installare e configurare l’ambiente di virtualizzazione Docker su Raspberry Pi dotato di sistema operativo Raspbian
  • Livello di difficoltà: basso
CONCETTI AFFRONTATI:
  • installazione e configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
  • Sistema operativo Raspbian (Raspberry Pi OS)
  • Docker per Raspbian
PREREQUISITI:
DISPOSITIVI FISICI UTILIZZATI:
GUIDA MAGGIORMENTE INDICATA PER:

Raspbian

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione guida: 1.0

Raspbian + Docker

Abstract

L’avvento di Docker (e di altri ambienti similari) ha portato una grande ventata di novità negli ultimi anni. Citando Wikipedia, Docker è “un progetto open-source che automatizza il deployment di applicazioni all’interno di contenitori software, fornendo un’astrazione aggiuntiva grazie alla virtualizzazione a livello di sistema operativo di Linux.

Detta in parole più semplici, Docker crea sul sistema operativo (che sia Raspbian di Raspberry Pi come Windows, macOS e altre centinaia di realtà operative) uno strato di virtualizzazione sofware sul quale “far girare” porzioni di software in modo del tutto isolato e autonomo. Questo porta con sé tutta una serie di vantaggi, a partire dalla sicurezza, dalla rapidità di installazione dei contenuti, la facilità nel effettuare backup, la possibilità di “testare” molti software senza “sporcare” il sistema e molto altro ancora. Su Docker HUB è possibile trovare decine e decine di applicazioni liberamente scaricabili ed eseguibili tramite questo strumento (ovviamente su Raspberry sono utilizzabili solo quelle adatte all’architettura ARM tipica di questo micro-computer).

Installare Docker su Raspbian è un gioco da ragazzi, ed è pratica comune per chi voglia installare applicativi distribuiti in modalità container per questo ambiente di virtualizzazione. Due esempi tra tanti? L’HUB per domotica personale Home Assistant in distribuzione Core (vedi guida) o in distribuzione HASSIO (vedi guida).

Assunti

Questa guida è dedicata a chi abbia già un Raspberry in uso con sistema operativo Raspbian. Per coloro che non abbiano ancora provveduto e si trovino ad avere un Raspberry nuovo, magari acquistato appositamente per realizzare la propria domotica, allora questo passo della guida va smarcato seguendo prima un’altra guida, che spiega passo passo come configurare il sistema operativo Raspbian.

La guida da seguire:

Una volta terminata la configurazione di Raspbian (inclusa la possibilità di collegarvisi tramite SSH) è possibile procedere nella presente guida.

Docker

INSTALLAZIONE AUTOMATICA

Una volta collegati via SSH al proprio Raspberry (avendo cura di utilizzare l’utenza “pi“), eseguire innanzitutto un aggiornamento dell’ambiente tramite i seguenti comandi:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo reboot

Successivamente al riavvio causato dall’ultimo comando, installare tramite procedura automatica l’ambiente di virtualizzazione Docker tramite il comando:

sudo curl -fsSL https://get.docker.com -o /tmp/get-docker.sh
sudo chmod +x /tmp/get-docker.sh
sudo sh /tmp/get-docker.sh

Al termine, saltare alle verifiche. In caso di problemi con l’installazione di Docker, tentare con la procedura manuale qui di seguito illustrata.

INSTALLAZIONE MANUALE

In caso l’installazione automatica non vada a buon fine, è possibile effettuare l’installazione manualmente. Anche in questo caso, una volta collegati via SSH al proprio Raspberry (avendo cura di utilizzare l’utenza “pi“), eseguire innanzitutto un aggiornamento dell’ambiente tramite i seguenti comandi:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo reboot

Successivamente al riavvio causato dall’ultimo comando, eseguire il seguenti comandi:

sudo apt-get install apt-transport-https ca-certificates curl avahi-daemon dbus -y
sudo apt-get install jq apparmor-utils socat software-properties-common -y

Ora è necessario installare “Network manager”, un pacchetto specifico. Per installarlo è necessario essere collegati via SSH tramite connessione cablata e non Wi-Fi oppure tramite terminale lavorando direttamente e fisicamente connessi a Raspberry.
Non lanciare il comando che segue tramite connessione Wi-Fi.

sudo apt-get install network-manager

A questo punto dobbiamo perfezionare la configurazione di Raspbian, modificando il file “/boot/cmdline.txt” tramite il comando:

sudo nano /boot/cmdline.txt

Nell’editor che apparirà, posizioniamoci sul fondo del testo e aggiungiamo il seguente codice (ovviamente aggiungendo uno spazio in coda alla pre-esistente stringa, prima di copia-incollare):

cgroup_enable=memory cgroup_memory=1

Usciamo e salviamo (CTRL+X, Y, Invio).
Infine, riavviamo il Raspberry per rendere effettive le modifiche:

sudo reboot

Una volta riavviato il sistema operativo, ricollegarsi ed eseguire il seguenti comandi (attenzione: copiare per la loro interezza le stringhe che seguono):

sudo curl -fsSL https://download.docker.com/linux/raspbian/gpg | sudo apt-key add -
echo "deb [arch=armhf] https://download.docker.com/linux/raspbian buster stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt-get update
sudo apt-get install docker-ce -y

Verifiche

Successivamente all’avvenuta installazione e per verificare che Docker sia correttamente installato, eseguire il seguente comando:

sudo docker run armhf/hello-world

Per confermare la bontà dell’installazione ed esecuzione di Docker, l’output dev’essere simile al seguente:

Unable to find image 'armhf/hello-world:latest' locally
latest: Pulling from armhf/hello-world
a0691bf12e4e: Pull complete 
Digest: sha256:9701edc932223a66e49dd6c894a11db8c2cf4eccd1414f1ec105a623bf16b426
Status: Downloaded newer image for armhf/hello-world:latest

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

Complimenti!
Docker è ora installato e operativo sul vostro sistema.

   
Telegram News Channel