Dieser Artikel beschreibt die regelmäßige Wartung und Fehleranalyse für Portainer.
Ziel: Tote Endpoints vermeiden, Logs im Griff behalten, Plattenplatz sichern und stabile Funktion sicherstellen.
Portainer verwaltet Umgebungen („Environments“) → jede zeigt auf einen Docker-Socket oder eine Remote-API.
* Endpoint: `unix:///var/run/docker.sock`
* Tote Einträge (z. B. alte Hosts mit IP:2376) → löschen oder deaktivieren
<code bash> # Test: Local Docker-Socket erreichbar? curl –unix-socket /var/run/docker.sock http://localhost/_ping # OK → pong </code>
In docker-compose.yml fĂĽr Portainer muss enthalten sein:
volumes: - /var/run/docker.sock:/var/run/docker.sock - portainer_data:/data
→ ohne diesen Mount funktioniert „Local environment“ nicht.
Portainer pingt die Environments regelmäßig (Container-Snapshot, Healthcheck).
Vollgelaufene Container-Logs führen zu „Platte 100 %“ und Fehlermeldungen.
Im Compose jedes Dienstes:
logging:
driver: json-file
options:
max-size: "50m"
max-file: "5"
lsof +L1 | head -n 20
→ zeigt Prozesse mit „gelöschten, aber noch offenen“ Dateien.
df -h /var/lib/docker /var/run df -i /var/lib/docker # Inodes docker system df docker system df -v
→ Local Socket nicht gemountet / falsche Rechte / Environment gelöscht
* „connect: connection refused 193.197.168.21:2376“
→ Remote Docker-API down oder Host nicht erreichbar
* „no route to host“
→ Firewall/VPN/Netzwerkproblem
* „cannot find webhook by containerId“
→ Container entfernt, DB-Eintrag verwaist → Stack neu deployen
Regelmäßig:
# unbenutzte Images, Container, Netzwerke, Volumes docker system prune -af --volumes
portainer_data/opt/stacks/portainer/ + Daten sicherndf -h)curl --unix-socket ... _ping?lsof +L1)?