Raspberry PI – Docker ohne Probleme installieren
Du hast sicher auch schon einmal etwas von “Docker” gehört, oder suchst gerade danach. Denn ansonsten würdest du sicherlich hier nicht gelandet sein. In diesem Artikel nehme ich dich mit auf eine Reise in der ich dir zeige, wie ich auf meinem Raspberry Pi, Docker installiert habe. Ich begleite dich durch die gesamte Installation bis hin zur Einrichtung unseres ersten Containers.
DarkWolfCave.de
Docker auf einem Raspberry Pi installieren
Kurzes Tutorial wie du Docker auf einem Raspberry Pi installieren kannst
Sie sehen gerade einen Platzhalterinhalt von YouTube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenRaspberry Pi – Docker – Was brauchen wir?
Ganz klar! Wir brauchen einen Raspberry Pi! Und ja, Docker läuft auch auf einem Linux-System und die Installation ist dort gleich oder sehr ähnlich. Dennoch beschränke ich mich hier auf einen Raspberry Pi.
Und wir benötigen Docker – denn dies wollen wir ja nutzen 🙂
Du wirst hier einen groben Überblick finden.
Allerdings biete ich dir auch noch etwas mehr Support an:
- Du benötigst persönlichen Support
- Du möchtest von Beginn an Unterstützung bei deinem Projekt
- Du möchtest ein hier vorgestelltes Plugin durch mich installieren und einrichten lassen
- Du würdest gerne ein von mir erstelltes Script etwas mehr an deine Bedürfnisse anpassen
Für diese Punkte und noch einiges mehr habe ich einen limitierten
VIP-Patreon Tarif
eingerichtet. Falls er dir dort zurzeit nicht angeboten wird,
kontaktiere mich bitte über Discord und wir finden eine Lösung!
Docker Installation
Es gibt mehrere Wege um Docker auf seinem Raspberry Pi zu bekommen. Ich habe mich für ein Script und Download von get.docker.com entschieden.
Um das Script zu erhalten, genügt es folgenden Befehl auszuführen. Es wird dann das entsprechende Script in dem Ordner abgelegt indem du diesen Befehl gestartet hast:
curl -fsSL https://get.Docker.com -o get-Docker.sh && chmod +x get-Docker.sh
Der curl Befehl lädt das Script herunter und der chmod lässt es uns dann mit dem nächsten Befehl starten.
Nun führen wir dieses Script mit sudo-Rechten aus und die eigentliche Installation von Docker beginnt:
sudo ./get-Docker.sh
Geh dir einen Kaffee oder Wasser holen und warte das Ende der Installation ab. Dies kann ein wenig dauern.
In meinem Fall laufen die meisten Applikationen und Services unter dem User “pi” – dieser soll auch Docker benutzen/verwalten dürfen. Daher trage ich ihn jetzt in die neue Gruppe “docker” ein. Falls du einen anderen User dafür verwenden willst, dann musst du natürlich diesen angeben.
sudo usermod -aG docker pi
Prüfen können wir auch direkt ob der User in der Gruppe angelegt wurde:
cat /etc/group | grep docker
Du solltest jetzt in etwas sowas sehen: docker:x:995:pi
Allerdings würde dies erst bei einem Neustart die Wirkung zeigen. Wir können und werden jetzt aber lediglich die Gruppenrichtlinien neu einlesen:
newgrp docker
Natürlich wollen wir jetzt auch noch testen ob soweit alles funktioniert.
Was würde sich da besser anbieten als ein wunderschönes “Hello-World” ?
Klar gibt es das auch als Container. Also los, trau dich:
docker run hello-world
Bei einem erfolgreichem Hello-World solltest du in etwa sowas sehen:
Hier ist natürlich nicht wirklich etwas passiert – aber es zeigt dir: Docker wurde erfolgreich auf deinem Raspberry Pi installiert!
Falls du mehr über Docker wissen möchtest, dann findest du bei mir weitere Berichte, oder durchforste das Internet. Außerdem kann ich folgendes Buch sehr empfehlen:
Docker über Terminal oder gibt es auch eine GUI?
Deine Raspberry Pi Docker Installation ist jetzt abgeschlossen und du könntest anfangen Container zu integrieren. Dafür gibt es viele Befehle um diese über das Terminal nutzen zu können. Gib einfach mal docker --help
ein und schaue sie dir an.
Allerdings wäre es doch toll, wenn man dieses über eine grafische Oberfläche nutzen könnte. Und, da unser Raspberry ja headless läuft, in einem Webbrowser aufrufbar wäre.
Schlaue Köpfe haben dafür natürlich auch etwas entwickelt und für uns bereitgestellt: Portainer
Portainer
Dieses wirklich hilfreiche und mächtige Tool wird uns als Container bereitgestellt.
Nach der Installation ermöglicht es uns, weitere Container über eine grafische Weboberfläche zu verwalten.
Weitere Informationen findest du bei portainer.io.
Installation von Portainer als Docker-Container
Als erstes benötigen wir einen Ort, in dem Portainer seine Daten ablegen kann. Denn bei einem Neustart eines Containers, sind immer alle Daten in diesem wieder weg bzw. nur die Standard-Werte vorhanden. Mit einem Volumen können wir einen festen Punkt definieren in dem die Daten existieren bleiben. Diesen richten wir mit folgendem Befehl ein:
docker volume create portainer_data
Jetzt werden wir den Portainer Server Container installieren.
Wir nehmen hier die Default-Werte von den Ports (8000 und 9443). Diese kannst du natürlich auch anpassen. Ein klein wenig Erklärung dazu. Möchtest du mehr über die Attribute wissen, bieten sich die Docker-DOCS an.
-d = führt die Installation im Hintergrund aus
-p = Portzuweisung (hier 8000 zu 8000 und 9443 zu 9443)
–restart = hier “always” – Nach jedem Fehler oder Neustart des Raspberry Pi, wird der Container auch neu gestartet.
-v = hiermit verbinden wir die Sockets (docker.sock) Docker->Portainer und die Pfade zum Volume (portainer_data – welches wir weiter oben angelegt hatten)
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
Die Installation ist recht zügig abgeschlossen und du kannst jetzt prüfen ob in Docker der Container auch wirklich eingerichtet wurde:
docker ps
Sieht in meinem Fall also schon einmal recht gut aus. Testen wir doch direkt ob wir auch auf die Web-GUI kommen:
https://IP-DEINES-RASPBERRYS:9443
Den Hinweis im Browser, dass die Seite vielleicht nicht sicher sei, ignorieren wir hier.
Danach solltest du auf dieser Seite landen:
Du musst jetzt ein Passwort für den admin-User vergeben. Den Namen kannst du auch wechseln.
Allerdings solltest du dir dieses Passwort gut merken können oder notieren (jaja.. macht man nicht 😛 ) , denn ich habe nirgends eine Möglichkeit gefunden, dieses admin Passwort zurücksetzen zu können.
Du darfst mich gerne in den Kommentaren weiter unten korrigieren falls ich einfach nur zu doof war.
Danach noch “Create User” und du befindest dich im Admin-Bereich. Es sein denn…
du siehst so etwas:
OOhhhhh.. was denn nu? Naja.. vermutlich hast du zu lange hier gelesen 😛
Das ist aber auch nicht weiter tragisch, einfach den Container nochmal neu starten und die Webseite erneut aufrufen sowie den User anlegen:
docker restart portainer
Jetzt wirst du aber endlich im Admin-Bereich der Portainer Web-Gui sein:
Portainer Web-Gui
Wenn du dich zum ersten mal bei Portainer einloggst, werden dir die Punkte sicher nicht sehr viel sagen. Aber das macht auch nichts, klicke dich einfach durch und schaue dich um. Viel “kaputt” machen kannst du hier nicht.
Ich werde jetzt auch nicht alle möglichen Menüpunkte mit dir durchgehen, dazu wird es vielleicht noch einen eigenen Artikel geben.
Aber schauen wir uns im Menü den Eintrag “Containers” etwas genauer an:
Du siehst im mittleren Bereich jetzt zwei Container und deren Images (jeder Container benötigt ein Image, denn da “ist alles drin” damit man überhaupt irgendwas nutzen kann).
Wenn du weiter oben das “Hello-World” Beispiel ausgeführt hast, wirst du dieses auch hier in der Übersicht sehen.
Aktiv, bzw. im Status “running” wird aber lediglich unser “Portainer” sein. Wäre auch schlecht wenn nicht, denn dann wären wir gar nicht in dieser Übersicht 😉
Wie du siehst, war die Docker Installation gar nicht so schwierig und wir haben unseren ersten eigenen Container auch direkt ans laufen gebracht.