Da ich bevorzuge eine grafische Oberfläche zu bedienen, als alle Docker-Container über die Kommandozeile zu administrieren, werde ich Portainer verwenden. Portainer ist ein leistungsfähiges Tool zur Verwaltung von Docker-Containern über eine grafische Benutzeroberfläche. Es ermöglicht, Container zu starten, zu stoppen, zu überwachen und zu verwalten, ohne auf die Kommandozeile zurückgreifen zu müssen.
In diesem Beitrag werde ich die Installation der Community Edition von Portainer als Docker-Container zeigen.
Docker-Container einrichten
Als erstes werde ich ein Volume erstellen, damit Portainer seine Daten speichern kann und nach einem Neustart nicht verloren gehen.
docker volume create portainer_data
Jetzt lade ich den Container und starte diesen direkt. Dazu werden noch einige Parameter mit angegeben.
docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
Einige Parameter sind im folgenden kurz erklärt:
- -p 8000:8000 -p 9000:9000
Das Port-Mapping für die beiden Ports 8000 und 9000. Der Port 9000 wird für die Oberfläche benötigt. Alternativ kann ich stattdessen auch den Port 9443 für die SSL Verbindung nutzen. Da ich später nur mit dem Port 9000 arbeite, kann ich auf den Port 9443 verzichten. - –restart=always
Das System soll jederzeit neustarten
Der Container startet automatisch neu, wenn dieser beendet wird oder abstürzt. Diese Option stellt sicher, dass Portainer immer verfügbar bleibt, da Docker den Container automatisch neu startet, ohne dass ich manuell eingreifen muss. - -v /var/run/docker.sock:/var/run/docker.sock
Dieses Volume-Mapping stellt sicher, dass ich Docker innerhalb des Containers verwenden kann. - -v portainer_data:/data portainer/portainer-ce:latest
Dieses Volume-Mapping beinhaltet alle Daten des Containers. Das Volume portainer_data habe ich im vorherigen Schritt erstellt.
Ich kann kurz überprüfen, ob der Docker-Container auch läuft.
docker ps
Port freigeben
Je nach Einrichtung der Firewall auf meinem Linux-Server, muss ich den Port 9000 noch freigeben und die Firewall neu laden.
sudo ufw allow 9000/tcp comment "Portainer"
sudo ufw reload
Erste Anmeldung
Ich navigiere jetzt im Browser zu meiner Server-IP mit dem Port 9000.
http://<Meine Server IP>:9000/
Im Anmeldefenster lege ich den Benutzer admin mit einem sicheren Passwort an.
Umgebung auswählen
Unter dem Menüpunkt Home sehe ich meine Umgebungen, die mir zur Verfügung stehen.
Da ich nur die lokale Docker Umgebung habe wähle ich diese aus und kann jetzt damit weiter arbeiten und neue Docker-Container bequem und einfach hinzufügen.
Auf meinem Blog werde ich noch zeigen, wie ich Container hinzufüge und ein Zertifikat für eine sichere Verbindung erstelle.
2 Antworten
Hallo
ich bin neu auf dem Gebiet des Docker/Portainer. Daher auch unerfahren. Ich habe Docker und Portainer auf einem Pi4 installiert. Mittlerweile habe ich Home-Assistant, ESP-Home und einen Teamspeak3-Server am laufen. Allerdings habe ich das Problem, das sich Docker/Portainer nicht automatisch neustartet auch einen Zugriff auf das Dashboard vom Portainer habe ich dann nicht, auf Home-Assistant und Teamspeak ebenfalls nicht. Es startet erst alles nachdem ich den Pi4 vom Strom getrennt und wieder neu am Strom angeschlossen habe. Die Policy der jeweiligen Container stehen alle auf Always. Gibt es da eine Möglichkeit dies zu ändern?
Gruß
Denis
Hallo Denis,
leider kann ich dir keine Lösung zu deiner Beschreibung präsentieren. Dazu wäre es wichtig in die Logs von Portainer zu schauen.
LG
Lars