Der erste Container -> Portainer – Docker UI

Nachdem ich Docker installiert hatte, ging es an die Auswahl des ersten Containers.

Meine Wahl fiel auf eine Web-Oberfläche für Docker, da ich möglichst wenig direkt auf der Kommandozeile ausführen wollte.

Eine der bekanntesten und verbreitetsten Docker-WEB-UIs ist Portainer.

Die Portainer-Installation war mit nur 2 Kommandozeilen erledigt.

docker volume create portainer_data

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 \
    cr.portainer.io/portainer/portainer-ce:latest

Ich hatte meinen ersten Container installiert und gestartet.

Aber was hatte ich damit überhaupt ausgelöst? Der erste Befehl hat eine Dateiablage/Dateisystem (Docker -> Volume) mit dem Namen ‚portainer_data‘ erzeugt.

Darin sollen alle Daten und Einstellungen landen, die im Container angepasst werden, also von der Standard-Konfiguration abweichen. Bei Docker heißt dieses Vorgehen ‚persistence‘, dazu habe ich auch einen eigenen Artikel erstellt, da dies eines der wichtigsten Elemente im Umgang mit Docker-Containern ist.

Der zweite Befehl tut mehrere Dinge gleichzeitig.

  1. Er lädt die Vorlage portainer/portainer von https://hub.docker.com herunter
  2. Mit dem Parameter „-d“ wird der Container unabhängig (detached) von der Kommandozeile gestartet. Dadurch läuft er weiter, auch wenn die Kommandozeile geschlossen wird.
  3. die beiden Parameter die mit „-p“ beginnen, dienen der Netzwerk-Konfiguration. Der Container wird die Netzwerk-Adresse des Docker-Servers (Host) verwenden, und seine Dienste über die IP-Ports 9443 bzw. 8000 bereitstellen. Im Beispiel oben, wird der Container die gleichen Ports intern wie extern benutzen. Das muss aber nicht so sein, sondern hier kann man auch extern andere IP-Ports verwenden, falls z.B. schon ein anderer Container den gewünschten externen Port aktiv verwendet.
  4. mit dem Parameter „–name“ wird der Anzeigename festgelegt, lässt man diesen Parameter weg, wird Docker einen Container-Namen „zufällig“ erzeugen.
  5. „–restart always“ sorgt dafür daß der Container direkt wieder startet, sollte der Dienst, warum auch immer, stoppen.
  6. die beiden „-v“ Parameter binden virtuelle Dateisysteme (Docker -> Volumes) ein.
    1. „/var/run/docker.sock“ ist dabei kein Dateisystem, sondern bindet die lokal laufende Docker-Instanz direkt in den neuen Portainer-Container mit ein, damit man direkt eine Verbindung zum lokalen Docker hat und diesen nicht erst noch zusätzlich verbinden muss
    2. „portainer_data:/data“ bindet das vorher erzeugte Volume „portainer_data“ als persistenten Datenspeicher in den Container ein.


Jetzt kann direkt in einem beliebigen Internet-Browser die URL: https://raspberrypi:9443 aufgerufen werden und man landet direkt auf der Portainer Startseite und muss dort direkt das Admin-Kennwort festlegen. (Falls der Aufruf mittels Name nicht funktioniert, dann die IP-Adresse des Raspberries verwenden)

Dieses Bild hat ein leeres Alt-Attribut. Der Dateiname ist 2019-09-05-22_36_32-Portainer-1024x528.png

Schreibe einen Kommentar