Hier zeige ich euch, wie ihr Portainer mittels Docker installiert und per Traefik adressieren könnt.
Update
28.12.2020 | Anleitung erneuert für Portainer 2 |
27.03.2020 | Erstellung dieser Anleitung. |
Inhaltsverzeichnis
1. Verzeichnis erstellen
Zuerst erstellen wir uns ein passendes Verzeichnis.
mkdir -p /opt/containers/portainer/data
2. Docker Compose Datei erstellen
Nun erstellen wir unsere Docker Compose Datei. In dieser Datei sind bereits die passenden Einstellungen für Traefik enthalten. Wenn ihr noch kein Traefik installiert habt, dann könnt ihr dies mit dieser Anleitung tun.
nano /opt/containers/portainer/docker-compose.yml
Inhalt:
version: '3' services: portainer: image: portainer/portainer-ce:latest container_name: portainer restart: unless-stopped security_opt: - no-new-privileges:true networks: - proxy volumes: - /etc/localtime:/etc/localtime:ro - /var/run/docker.sock:/var/run/docker.sock:ro - ./data:/data labels: - "traefik.enable=true" - "traefik.http.routers.portainer.entrypoints=http" - "traefik.http.routers.portainer.rule=Host(`portainer.euredomain.de`)" - "traefik.http.middlewares.portainer-https-redirect.redirectscheme.scheme=https" - "traefik.http.routers.portainer.middlewares=portainer-https-redirect" - "traefik.http.routers.portainer-secure.entrypoints=https" - "traefik.http.routers.portainer-secure.rule=Host(`portainer.euredomain.de`)" - "traefik.http.routers.portainer-secure.tls=true" - "traefik.http.routers.portainer-secure.tls.certresolver=http" - "traefik.http.routers.portainer-secure.service=portainer" - "traefik.http.services.portainer.loadbalancer.server.port=9000" - "traefik.docker.network=proxy" networks: proxy: external: true
Notwendige Anpassungen:
- Ihr müsst noch den Hostnamen anpassen (portainer.euredomain.de)
3. Portainer starten
Nun könnt ihr schon Portainer nutzen. Gebt dazu folgendes ein:
docker-compose -f /opt/containers/portainer/docker-compose.yml up -d
4. Konfigurieren
Nun geht ihr auf „portainer.euredomain.de“. Dort solltet ihr jetzt folgendes sehen.
Im nächsten Schritt wählt ihr „Local“ aus, wenn alle eure Docker Container auf diesem Server laufen.
Jetzt habt ihr einen Überblick über eure laufenden Docker Container.
Letzte Artikel von Christian (Alle anzeigen)
- ncdu – Speicherverbrauch auf Linux Konsole anzeigen - 23. Januar 2021
- Rocket.Chat – mit Docker Compose und Traefik installieren - 23. Januar 2021
- Raspberry Pi – Nextcloud Backup mittels rclone erstellen - 18. Januar 2021
15 Kommentare
Hallo Christian,
Dank deinen Anleitungen konnte ich schon einige Service mit Docker in Betrieb nehmen (z.B. Traefik, Nextcloud,etc.).
Nun wollte ich mal den Portainer ausprobieren. Wie immer nach deiner Anleitung.
Beim starten (docker-compose -f pfad/zu/docker-compose.yml up) scheint es mir auch keine Fehler zu generieren und ich kann den Container starten. Doch beim Aufrufen von portainer.domain.xy sagt er mir dann:
Beim Verbinden mit portainer.domain.xy trat ein Fehler auf. Die Gegenstelle meldet, dass sie auf einen internen Fehler gestoßen ist.
Fehlercode: SSL_ERROR_INTERNAL_ERROR_ALERT
Woran könnte das liegen? portainer.euredomain.de habe ich angepasst. Der Rest ist identisch.
Besten Dank und Gruss
Gabriel
Hallo,
prima Anleitungen – vielen Dank dafür.
Bei Portainer habe ich exakt den gleichen Fehler wie Gabriel. Kannst du hier helfen?
Gruß
Christian
Hallo ihr beiden,
wenn man die Container startet, dann muss man etwas warten, bis Traefik das Zertifikat hat.
Klappt denn das Webinterface von Traefik bei euch?
LG
Christian
Hallo Christian,
die GUI von Traefik funktioniert ohne Probleme und zeigt auch keine Fehler bei Portainer an. Aber auch nach warten, bleibt der SSL Fehler wie bei Gabriel, egal welchen Browser ich verwende: Safari, Firefox und chrome zeigen SSL Fehler.
Gruß Christian
Hast du den Hostnamen auch 2x in der Konfiguration angepasst?
Sonst ist der „Traefik Code“ ja immer identisch.
LG
Christian
Ja habe ich gemacht. Nextcloud und Traefik funktionieren auch entsprechend ohne Probleme.
Habe exakt die yml kopiert und die Hosts an beiden Stellen mit meiner url ausgetauscht. Auch Traefik und nextcloud sind nach deiner Anleitung und funktionieren auch.
VG
Christian
Ich hab‘s: ich hätte per NAT auf die falsche IP weitergeleitet.
Alles bestens.
Dankeschön.
Hallo Christian,
erst einmal Danke, für all die ganzen Anleitungen. Ich bin selbst Liebhaber der IT, aber hatte leider nicht das Glück, zwecks Abitur und warte nun sehnsüchtig auf eine IT-Ausbildung, hoffentlich klappt dies.
Nun zu meiner Frage: Wie kommst du auf den Loadbalancerport von 9000? Sollte der nicht auf 80 gesetzt werden?
Auf meinem Root laufen einige Container über Traefik + Docker, u. a. TS3 (ohne Traefik), aber dafür mit einer gewissen Portrange, u. a. 9000. Würde sich doch dann beißen oder?
Hab das noch nicht so raus, wie das mit den Ports für die Loadbalancers am sinnvollsten ist. Kannst du dazu ein Feedback bitte geben?
Viele Grüße
Marcel
Hallo Marcel,
dann wünsche ich dir mal viel Erfolg, dass das mit deiner IT-Ausbildung klappt 🙂
Der Docker Container von Portainer setzt den Port standardmäßig auf 9000. Hier kannst du es nachschauen (https://hub.docker.com/layers/portainer/portainer/latest/images/sha256-e879687781d32f7c10440f7b5f67e5e7f2399179af6196c66c76182758b76299?context=explore)
Deshalb muss man hier den Port 9000 „umlenken“.
Ein Reverseproxy wie Traefik sorgt ja dafür, dass viele Dienste beispielsweise über Port 80 angesprochen werden können. TS3 nutzt komplett andere Ports als ein Webserver. Hier sollte es also zu keinen Problem kommen.
LG
Christian
Moin,
ich habe zur Zeit das Problem das der Conatiner startet aber ich kann Ihn leider nicht erreichen.
Traefik sieht aber im System den Portainer Container.
Was mach ich verkehrt?
Hallo Christian,
ist deine Anleitung noch aktuell?
https://hub.docker.com/r/portainer/portainer
This Repo is now deprecated, use portainer/portainer-ce instead.
https://hub.docker.com/r/portainer/portainer-ce
Ein schöne Seite hier, super Christian.
Hallo Matthias,
Danke für deinen Hinweis. Die Anleitung ist nun wieder aktuell.
LG
Christian
Hallo, ist mein Kommentar angekommen?
Keine Hinweise erwünscht?
LG
Matthias
Hallo, jetzt gibt es nur noch portainer-ce.
https://hub.docker.com/r/portainer/portainer
NOTE, This repo, portainer/portainer is the home of Portainer v1.24.x, and is now deprecated; all new releases for Portainer 2.0 will be published in portainer/portainer-ce
Also da schauen:
https://hub.docker.com/r/portainer/portainer-ce
Die Anleitung hier ist nicht aktuell.
LG
Matthias
OT
Danke für die schönen vielen Anleitungen hier.
Hallo Matthias,
danke für deinen Hinweis.
Werde die Anleitung die Tage erneuern.
Leider hat WordPress die Eigenschaft, dass Kommentare, welche Links enthalten, nicht direkt freigegeben werden..
LG
Christian