Docker sul Raspberry Pi: come funziona?

Il mini computer Raspberry Pi non è soltanto adatto per giocare o per avvicinare i bambini al mondo degli hardware e della programmazione. Ora gli utenti possono creare un server web con Raspberry Pi o impostare ownCloud sul Raspberry Pi. Si possono anche combinare Raspberry Pi e Nextcloud. Alcuni utenti hanno anche già configurato un proprio mail server con il Raspberry Pi.

Anche gli sviluppatori hanno scoperto il computer a scheda singola. Gli sviluppatori web e di software hanno comunque utilizzato il mini computer per molto tempo, ad esempio per lavorare con l’Internet of Things. Allora perché non utilizzare i vantaggi di Docker anche sul Raspberry Pi?

Quali sono le difficoltà nella connessione del Raspberry Pi con Docker?

La maggior parte dei Raspberry Pi funziona con il sistema operativo ufficiale Raspberry Pi OS. Si tratta di una modifica della distribuzione Linux Debian. Poiché Docker molto spesso è utilizzato su macchine Linux con cui si ha già una buona esperienza, non dovrebbero perciò sorgere complicazioni. Tuttavia, la differenza di hardware può causare problemi, perché il Pi non è solo una versione ridotta di un PC, ma utilizza anche un’architettura di processore diversa.

Fatto

Il sistema operativo Raspberry Pi OS era precedentemente conosciuto con il nome di Raspbian.

Docker nasce in realtà da un sistema x64 come lo si conosce dalla maggior parte dei computer moderni. Tuttavia, il Raspberry Pi utilizza la tecnologia ARM. Ciò significa che le normali immagini Docker non sono compatibili con l’istanza sul Pi. Nel frattempo si possono trovare sempre più container pronti per il Raspberry Pi. È importante che scarichiate contenitori già pronti solo da fonti affidabili, perché altrimenti correte grandi rischi per la sicurezza. Anche se la scelta è limitata (e probabilmente rimarrà tale rispetto a Docker su altri sistemi), è comunque possibile sfruttare appieno il sistema di container sviluppando i propri container.

Vantaggi di Docker sul Raspberry Pi

Se avete dimestichezza con gli hardware dei computer e con Linux, non troverete il Raspberry Pi troppo complicato da utilizzare. Perciò questi piccoli PC vengono anche utilizzati per esperimenti. Docker persegue lo stesso fine: i container sono autonomi e chiusi e non possono perciò causare danni rilevanti al sistema.

Poiché i Raspberry Pi sono relativamente poco costosi da acquistare e da utilizzare, sono adatti anche per la costruzione di uno sciame Docker. Invece di creare una struttura di server, basta acquistare dei Raspberry Pi e collegarli tutti insieme. Ogni dispositivo esegue il proprio container. Con Swarm e Compose si possono poi orchestrare i container.

I piccoli computer a scheda singola, come il Raspberry Pi, sono sempre più utilizzati nell’ambito dell’Internet of Things grazie alle loro piccole dimensioni e al costo minimo. Combinando Docker e Raspberry Pi, è persino possibile far funzionare la tecnologia dei container su un dispositivo che normalmente non si definirebbe come computer.

Installare Docker su Raspberry Pi OS

Nella migliore delle ipotesi, Docker può essere facilmente installato con il sistema operativo del Raspberry Pi. Il team di Docker ha fornito a tal fine uno script di installazione separato. Il primo passo è scaricare ed eseguire lo script, che funziona tramite il comando cURL.

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

Per essere davvero sicuri che l’installazione sia andata a buon fine, potete provare l’immagine Hello World.

docker run armhf/hello-world

Se tutto ha funzionato correttamente, Docker ha dovuto prendere l’immagine da Internet e poi eseguirla. Dovrebbe apparire un messaggio dello sviluppatore. Non si tratta qui della normale immagine Hello World, che si può eseguire su altri sistemi. L’immagine che si intende qui è stata infatti creata specificamente per i processori ARM (e perciò anche per il Raspberry Pi).

N.B.

I container Docker sono forniti sia dagli sviluppatori ufficiali che dalla community. Per non incorrere in alcun rischio per la sicurezza, dovreste usare soltanto quei container che sono attivamente sottoposti a manutenzione e utilizzati da molti utenti. Nel DockerHub si trovano anche container creati appositamente per Raspberry Pi. ll repository offre anche la possibilità di visualizzare solo “Official Images” (immagini ufficiali) o container di “Verified Publishers” (editori verificati).

Hypriot OS: la soluzione tutto-in-uno

Un piccolo team di sviluppatori ha creato un sistema operativo speciale per chi desidera un’esperienza migliore con il Raspberry Pi e Docker: Hypriot OS è appositamente preconfigurato per l’uso dei container. Il sistema operativo è basato su Debian, ma la sua struttura minimale è perfetta sia per Raspberry Pi che per Docker. Anche il kernel è ottimizzato appositamente per questo scopo. Grazie al design leggero del sistema, è anche possibile far funzionare più container su sistemi meno performanti.

Hypriot OS si installa come gli altri sistemi operativi per il Raspberry Pi: prima si prepara su un altro computer una scheda SD con l’immagine di Hypriot. Il sistema operativo si può scaricare gratuitamente dal sito web o su GitHub. La scheda di memoria viene quindi inserita nel Raspberry Pi. All’avvio, il computer si carica dalla scheda ed esegue Hypriot. Utilizzando una connessione SSH, è possibile accedere al Raspberry Pi dal proprio computer e utilizzare Docker sul Raspberry Pi.

Consiglio

Indipendentemente da come installate Docker sul Rasperry Pi, alla fine dovete lavorare con i software container. Nel nostro tutorial su Docker potete imparare i primi passi e scoprire molte informazioni importanti su Docker.