Docker auf dem Raspberry Pi mit HypriotOS

© Pixelery, 123RF

Gut verpackt

Das Virtualisieren von Ressourcen trauen die meisten nur "ausgewachsenen" Computern zu. Dass sich auch der Raspberry Pi zur Virtualisierung eignet, zeigt HypriotOS.

Viele komplexe Linux-Applikationen, wie etwa Web- oder Cloud-Server, muss man umständlich und zeitraubend mit zahlreichen abhängigen Paketen manuell installieren und konfigurieren. Einsteiger werfen da schnell das Handtuch. Mit HypriotOS und dem darin integrierten Docker (siehe Kasten "Was ist Docker?") bekommen Sie eine quasi schlüsselfertige Lösung, die Ihnen eine Menge Zeit und Arbeit erspart.

Das aus dem oberfränkischen Bamberg stammende HypriotOS bringt als erstes Betriebssystem für den Raspberry Pi Docker auf die ARM-Architektur. Das auf Debian basierende Containersystem wird seit 2014 entwickelt und legt den Fokus auf Sicherheitsaspekte sowie ein möglichst kompaktes Erscheinungsbild. HypriotOS bringt von Haus aus bereits alle wichtigen Docker-Werkzeuge mit.

Die ressourcenschonende Konzeption des Betriebssystems gestattet es, auch auf schwächeren ARM-Rechnern bis zu mehrere Hundert Docker-Instanzen simultan zu betreiben. Das macht den Raspberry Pi als Docker-Plattform im Markt der Embedded Systems und des Internet of Things (IoT) hochinteressant.

Was ist Docker?

Docker stellt eine im Vergleich zu dedizierten virtuellen Maschinen vereinfachte Virtualisierungslösung dar: In Containern, die eine Laufzeitumgebung für ein virtualisiertes Betriebssystem darstellen, laufen vom Rest des Systems isolierte Applikationen. Die Container verhalten sich dabei wie normale Dateien und lassen sich problemlos portieren. Die auf Linux zugeschnittene Virtualisierung nutzt verschiedene Technologien des Kernels. Die Container arbeiten voneinander unabhängig, beeinflussen sich nicht und lassen sich auch einzeln aktualisieren.

Insbesondere beim Ausrollen von Software, aber auch beim Verwenden mehrerer Cloud-Plattformen punktet Docker mit erheblichen Vorteilen: Aufgrund des kompakten Designs schleppen die Docker-Container nicht wie herkömmliche virtuelle Maschinen eine komplette Betriebssystemumgebung und den damit gegebenen Ressourcen-Overhead mit sich herum, sondern integrieren lediglich die zwingend benötigten Abhängigkeiten. Alle anderen Ressourcen stellt der Linux-Kernel des Hosts bereit. Docker-Container erhalten auf diesem Weg die benötigten Ressourcen jeweils isoliert zugeteilt, sodass auch Schadprogramme kaum eine Möglichkeit haben, sich über Containergrenzen hinweg zu verbreiten.

Setup

Sie erhalten HypriotOS als rund 230 MByte großes ZIP-File auf der Projektseite der Entwickler [1]. Das heruntergeladene Archiv entpacken Sie zunächst, dann kopieren Sie die resultierende, etwa 1 GByte große Image-Datei auf eine Micro-SD-Karte (Listing 1), die dabei nicht im System eingehängt sein darf.

Listing 1

 

$ dd if=hypriotos-rpi-v1.5.0.img of=/dev/mmcblk0 bs=1M conv=fsync

Anschließend stecken Sie die SD-Card in einen mit dem Netzwerk verbundenen Raspberry Pi und starten diesen. Beim ersten Hochfahren passt das Setup zunächst das Dateisystem auf der Karte an, was etwas dauert. Das Betriebssystem startet bis zum Login-Prompt und stellt nach Zuteilung einer IP-Adresse durch den Router automatisch die LAN-Verbindung her. Sie ermitteln danach die IP-Adresse des Systems, indem Sie auf einem anderen Rechner im Intranet einen Scan starten. Dazu eignen sich Tools wie der Angry-IP-Scanner. Der Raspberry Pi erscheint dabei mit dem Hostnamen black-pearl.local und der dazugehörigen IP-Adresse (Abbildung 1).

Abbildung 1: Um die IP-Adresse von HypriotOS in Erfahrung zu bringen, nutzen Sie Tools wie den Angry-IP-Scanner von einem anderen Rechner im Netz aus.

Auf dem HypriotOS-System arbeitet bereits ein SSH-Server, sodass Sie sich von jeder Arbeitsstation in demselben Netz aus auf dem Raspberry Pi anmelden können. Dazu geben Sie im Terminal den Befehl ssh pirate@RasPi-IP ein. Das vorgegebene Passwort lautet hypriot. Nach dem Anmelden zeigt der Befehl docker info den Status des Docker-Diensts an, wobei die Software eine lange Statusliste im Terminal ausgibt (Abbildung 2). Nun lassen sich variable Docker-Container auf das System transferieren, um damit zu arbeiten.

Abbildung 2: Läuft Docker, zeigt der Befehl docker info ausführliche Informationen dazu.

Server in a Box

Webserver gehören traditionell zu jenen Applikationen, die Sie auf herkömmlichen Maschinen zunächst aufwendig installieren und konfigurieren müssen. Unter HypriotOS reduzieren sich diese Prozeduren auf wenige Terminaleingaben. So genügt die Eingabe eines kurzen Kommandos, um ein entsprechendes Image aus dem Internet herunterzuladen und zu starten:

$ docker run -d -p 80:80 hypriot/rpi-busybox-httpd

Mit dem Befehl docker ps lassen Sie sich dann den aktiven Container anzeigen, im vorliegenden Beispiel den Webserver mit seiner Container-ID, dem heruntergeladenen Image sowie einigen weiteren Statusdaten (Abbildung 3). Ein Aufruf der IP-Adresse des HypriotOS-Systems im Webbrowser eines PCs öffnet die Startseite des Docker-Webservers.

Abbildung 3: Es genügt ein Aufruf (oben), um das gewünschte Docker-Image in Betrieb zu nehmen. docker ps (unten) zeigt den aktuellen Container-Status an.

Die Entwickler von HypriotOS stellen auf ihren Webseiten mehrere Beispiele für die Einsatzmöglichkeiten des Systems vor [2]. Dazu gehören unter anderem auch On-premise-Cloud-Server, aber auch Blog-Plattformen wie etwa Wordpress. Hier gilt es aber zu beachten, dass sich nicht jedes verfügbare Docker-Image für den Betrieb auf dem RasPi eignet: Weil dessen Hardware-Architektur auf ARM basiert, starten nur dafür konzipierte Container, nicht aber solche für andere Architekturen.

Auf Docker basierende Applikationen erhalten Sie auf den Seiten des Docker Hub [3]. Hier finden Sie auch ein eigenes Repository in Tabellenform speziell für HypriotOS [4], das ständig erweitert wird. Auch andere Docker-Sammlungen bieten Images für den Raspberry Pi an. Diese erkennen Sie an Kürzeln wie rpi oder arm im Image-Namen.

Zu jedem Docker-Image gehört eine kleine Anleitung für die Installation und den Einsatz. Sie öffnen sie durch einen Klick auf den Button Details rechts neben dem jeweiligen Applikationsnamen. Die angezeigten Befehlszeilenargumente für die Installation des Images können Sie dabei durch Kopieren und Einfügen direkt übernehmen.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Heft-DVD 11-12/2017

    Nur mit dem optimalen System und der richtigen Software nutzen Sie das volle Potenzial eines Mini-PC. Mit der Heft-DVD erhalten Sie nicht nur die neusten Distributionen für den RasPi und Co., sondern gleichzeitig auch die passenden Programme zu den Artikeln.

  • Docker einsetzen auf dem Raspberry Pi

    Packen Sie wichtige Anwendungen einfach in einen Container, den Sie komfortabel mit Docker verwalten.

  • Zwei Ubuntu-Betriebssysteme auf dem Raspberry Pi 2

    Canonical zögerte lange mit einem Image für den Raspberry Pi. Mit der zweiten Pi-Generation ändert sich dies: Gleich zwei Ubuntu-Systeme sind auf die Himbeere gekommen – eins für den Desktop und eins für die Cloud.

Aktuelle Ausgabe

10/2019
Raspberry Pi 4B

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Sonnige Zeiten

    UV-Strahlung ist für das menschliche Auge unsichtbar, was sie umso gefährlicher macht. Die Höhe der tatsächlichen Belastung verrät Ihnen das Selbstbauprojekt UV-Sensor.

  • Gut verpackt

    Für das Ansteuern kleiner Displays gibt es keine Programme von der Stange. Mit Python und einer Pygame-Bibliothek erstellen Sie trotzdem im Handumdrehen Anwendungen.

  • Macro-Mini-Micro-Bit

    Was dem Raspberry Pi für die Computerwelt gelungen ist, versucht der BBC Micro:bit für Mikrocontroller zu wiederholen. Das für Schüler entwickelte Kit hilft beim Einstieg in die hardwarenahe Programmierung.

  • Vorhang auf

    Mit dem modernen Video-Codec HEVC (H.265) erstellte Filme spielen bisherige RasPi-Modelle oft nur ruckelnd ab. Wir testen, ob der neue Raspberry Pi 4B das besser kann.

  • Überraschung!

    Eine optimierte Architektur und mehr RAM beschleunigen den RasPi 4B deutlich. Wir prüfen, wie gut sich der Neuling als Desktop-Rechner schlägt.

  • Durchgestartet

    Ein Stresstest zeigt, wie sich der neue Raspberry Pi 4 Modell B gegenüber den älteren Modellen abhebt.

  • Vierte Generation

    Eine schnellere CPU, USB 3.0 und Gigabit-Ethernet sind nur die Highlights des Raspberry Pi 4B: Das Board bringt viele weitere Neuerungen mit.

  • Tiefenmesser

    Um die Pumpe in einem Brunnenschacht möglichst genau zu positionieren, brauchen Sie dessen Tiefe. Die ermitteln Sie mithilfe eines präzisen Messgeräts aus einem Luftdrucksensor und einem Mikrocontroller.

  • Faktencheck

    Das via DVB-T2 ausgestrahlte Digital-TV liefert Bilder in HD-Qualität. Der dabei eingesetzte H.265-Standard überfordert allerdings kleine Mini-Rechner wie den Raspberry Pi – oder geht es doch?

  • Zugriff von außen

    React Native erlaubt es, Apps mit wenigen Zeilen Code zu programmieren. Mit einem entsprechenden Server sprechen Sie so den RasPi vom Smartphone aus an.