Portainer Container updaten: Images per GUI aktualisieren – ohne CLI und ohne Datenverlust
Portainer macht Container-Updates zur Sache weniger Klicks – wenn man den richtigen Workflow kennt.
Wenn du Docker-Container auf einem Heimserver verwaltest und Updates ohne Kommandozeile durchführen willst, ist der Portainer Update-Workflow die sinnvollste Option — Image-Pull, Recreate und Volume-Prüfung komplett im Browser. Nicht geeignet, wenn du automatisierte Updates ohne manuelle Eingriffe brauchst — dafür ist Watchtower oder Portainer BE die richtige Wahl.
Die meisten Nutzer klicken in Portainer auf „Pull latest image“ — und wundern sich dann, warum ihr Container danach immer noch die alte Version zeigt. Der Grund: Ein Image-Pull allein ändert nichts am laufenden Container. Du musst ihn danach neu erstellen lassen, nicht nur neu starten.
Kurz zur Begrifflichkeit: Ein Image ist die Vorlage, aus der ein Container gebaut wird. Ein Container ist die laufende Instanz. Neues Image pullen, Container neu aufbauen — beide Schritte sind Pflicht.
Dieser Artikel ist Teil einer Grundlagen-Serie. Weitere Artikel:
- 📖 Docker Container updaten ohne Datenverlust (Übersicht)
- ➔ Docker Volumes erstellen und verwalten
- ➔ Docker Compose Container updaten
- ➔ Watchtower Docker automatisch updaten
- ➔ Docker Container Backup erstellen
- ➔ Portainer Container updaten
- ➔ Docker Container Rollback nach fehlgeschlagenem Update
Entscheidung: Welcher Update-Weg ist der richtige?
| Situation | Richtiger Weg | Falscher Weg |
|---|---|---|
| Einzelner Container, manuell erstellt | Pull → Recreate | Restart |
| Stack (Docker Compose) | Pull and redeploy | Einzelne Container manuell recreaten |
| Automatische Updates gewünscht | Watchtower oder Portainer BE | Portainer CE allein |
| Container hängt, kein Update nötig | Restart | Recreate |
| Mehrere Container gleichzeitig | Stack → Pull and redeploy | Einzeln nacheinander in CE |
| Synology DSM 7 / QNAP / Unraid / TrueNAS Scale / Proxmox LXC | Identischer Workflow, ARM64-Images beachten | latest-Tag blind vertrauen |

Der richtige Update-Weg hängt davon ab, ob du einen Einzel-Container oder einen Stack aktualisierst.
So funktioniert der Portainer Update-Workflow
Image, Container und Cache – wie das zusammenhängt
Docker Hub ist der zentrale Image-Store. Dein Server hält eine lokale Kopie jedes verwendeten Images im Image-Cache. Portainer startet Container immer aus diesem lokalen Cache — nicht direkt von Docker Hub. Das ist der entscheidende Punkt, den viele übersehen.

Pull und Recreate sind zwei getrennte Schritte – erst zusammen führen sie zum Update des laufenden Containers.
Erst wenn du das neue Image explizit pullst und den Container danach neu erstellst (Recreate), läuft er wirklich mit der neuen Version. Ein simpler Neustart (Restart) ändert daran nichts — der Container startet dann nur das alte Image nochmal.
Was Portainer dabei macht – und was nicht
Portainer ist eine grafische Oberfläche für Docker. Images pullen, Container neu erstellen — alles per Klick im Browser. Was Portainer dabei nicht automatisch macht: Es prüft nicht selbstständig, ob auf Docker Hub eine neuere Version liegt.
Konkret: Du klickst auf „Pull latest image“ — Portainer fragt bei Docker Hub nach, ob das lokale Image identisch mit dem aktuellen Stand ist. Stimmt der Hash überein, meldet Portainer
Image up to date. Stimmt er nicht überein, wird das neue Image heruntergeladen. Danach muss der Container per Recreate neu gestartet werden — sonst läuft er weiter mit dem alten.
Volumes und Umgebungsvariablen überleben das Update – wenn richtig konfiguriert
Beim Recreate wird der alte Container gelöscht und ein neuer aus dem frischen Image gebaut. Deine Daten — Konfigurationsdateien, Datenbanken — sind dabei nur dann sicher, wenn sie in einem Volume oder einem Bind Mount liegen, also außerhalb des Containers auf deinem Host-System.
Portainer übernimmt beim Recreate alle vorhandenen Volume-Mounts und Umgebungsvariablen automatisch — sofern der Container ursprünglich über Portainer angelegt wurde. Wurde er manuell per CLI erstellt und nur in Portainer angezeigt, kann Portainer diese Konfiguration unter Umständen nicht vollständig lesen. Typischer Fallstrick, der gerne übersehen wird.
Schritt-für-Schritt: Portainer Update-Workflow für einzelne Container
Voraussetzung: Portainer CE läuft, du hast Zugriff auf die Web-UI.
Schritt 1 – Container-Detailansicht öffnen
Containers → gewünschten Container anklicken → Detailansicht öffnet sich.
Schritt 2 – Aktuellen Image-Tag notieren
Unter „Image“ den aktuellen Tag und die Image-ID notieren. Das ist dein Rollback-Anker — falls das neue Image Probleme macht, weißt du, wohin du zurück musst.
Schritt 3 – Image pullen
Button „Pull the latest image“ klicken. Portainer vergleicht den lokalen Hash mit Docker Hub.
– Meldung Image up to date → lokal und remote identisch (siehe FAQ zu veraltetem Cache)
– Meldung Image successfully pulled → neues Image liegt jetzt lokal vor
Schritt 4 – Container recreaten
Button „Recreate“ klicken — nicht Restart. Im Dialog:
– ✅ „Re-use volumes“ aktiviert lassen
– ✅ „Pull latest image“ kann hier nochmals aktiviert werden
Schritt 5 – Update verifizieren
Containers → Container anklicken → unter „Image“ die neue Image-ID prüfen. Stimmt sie mit der ID unter Images überein, läuft der Container auf dem neuen Stand.

Die Buttons „Pull the latest image“ und „Recreate“ in der Container-Detailansicht – beide Schritte sind zwingend notwendig.
Portainer Stack updaten: Pull and redeploy
Stacks (Docker Compose-Gruppen) haben einen eigenen Update-Weg — grundlegend anders als bei Einzel-Containern.
Stack-Update-Workflow:
1. Stacks → gewünschten Stack anklicken
2. Button „Pull and redeploy“ klicken
3. Portainer pullt alle Images des Stacks und recreatet alle Container in einem Schritt
Wichtig: Wer versucht, einen Stack-Container wie einen Einzel-Container manuell zu recreaten, riskiert, dass der Stack in einen inkonsistenten Zustand gerät oder Portainer die Kontrolle über den Stack verliert. Immer den Stack-eigenen Workflow verwenden.
Häufig gestellte Fragen
Warum startet mein Container nach dem Image-Pull noch mit dem alten Image?
Das ist der häufigste Stolperstein. Portainer lädt mit „Pull the latest image“ das neue Image herunter — aber der laufende Container bleibt unverändert. Er wurde aus dem alten Image gestartet und läuft weiter, bis du ihn explizit neu erstellst.
Nach dem Pull zwingend Recreate klicken, nicht Restart. Restart startet denselben Container neu — mit demselben alten Image. Recreate wirft den alten Container weg und erstellt einen neuen aus dem frisch gepullten Image.
Kurz-Check: Unter Containers → Image siehst du die Image-ID. Vergleiche sie mit der ID unter Images — stimmen sie überein, läuft der Container auf dem neuen Stand.
Was ist der Unterschied zwischen Restart und Recreate in Portainer?
Restart entspricht einem Prozess-Neustart — das zugrundeliegende Image bleibt identisch. Nützlich, wenn ein Dienst hängt, aber kein Update nötig ist.
Recreate löscht den Container und erstellt ihn neu — mit dem zuletzt gepullten Image. Alle Konfigurationsdetails (Ports, Umgebungsvariablen, Volume-Mounts) werden dabei aus der gespeicherten Container-Konfiguration übernommen, sofern du „Re-use volumes“ aktivierst.
Faustregel: Für Updates immer Recreate. Für „Dienst reagiert nicht mehr“ reicht Restart.
Gehen meine Daten beim Container-Update in Portainer verloren? (Portainer recreate container volumes bleiben erhalten)
Nein — sofern deine Volumes korrekt gemountet sind. Volumes leben außerhalb des Containers und bleiben beim Recreate erhalten, solange du „Re-use volumes“ im Recreate-Dialog aktiviert lässt (Standard: aktiviert).
Was verloren gehen kann: Daten, die direkt im Container-Dateisystem gespeichert wurden — also ohne Volume-Mount. Das ist ein Konfigurationsfehler, kein Update-Problem. Vor jedem Update lohnt ein kurzer Blick in die Volume-Liste des Containers.
Portainer zeigt „Image up to date“ – obwohl auf Docker Hub eine neuere Version existiert?
Passiert fast immer beim latest-Tag. Portainer vergleicht nur den lokalen Image-Hash mit dem zuletzt gepullten Stand. Hast du das Image vor Wochen gepullt, gilt es lokal als „aktuell“ — auch wenn inzwischen eine neuere Version veröffentlicht wurde.
Lösung: Unter Images das betroffene Image manuell löschen, dann erneut pullen. Oder direkt im Container-Detail auf „Pull the latest image“ klicken und anschließend den lokalen Image-Cache unter Images → Unused bereinigen.
Langfristige Lösung: Explizite Versions-Tags statt latest verwenden, z. B. nginx:1.27.0.
Wie update ich einen Docker Container in Portainer ohne Datenverlust? (how to update docker container in portainer without losing data)
- Container-Detail öffnen → Volume-Mounts prüfen (müssen vorhanden sein)
- „Pull the latest image“ klicken
- Recreate klicken, „Re-use volumes“ aktiviert lassen
- Nach dem Start: Logs prüfen, Version verifizieren
Sind keine Volumes eingetragen, erst Bind Mounts oder named Volumes konfigurieren — dann erst recreaten.
Kann ich in Portainer automatische Updates einrichten?
In Portainer CE gibt es keine eingebaute Auto-Update-Funktion für einzelne Container. Wer automatische Updates möchte, deployt Watchtower als eigenen Container — es prüft regelmäßig auf neue Images und führt Recreates selbstständig durch. Alternativ bietet die Portainer Business Edition erweiterte Webhook-Funktionen für CI/CD-Pipelines sowie automatische Image-Update-Benachrichtigungen.
Für einen typischen Heimserver reicht der manuelle Workflow alle paar Wochen vollkommen aus.
Wie update ich mehrere Container gleichzeitig in Portainer?
Einzelne Container lassen sich in Portainer CE nur nacheinander aktualisieren — ein Massen-Update per Checkbox gibt es nicht. Der effizientere Weg: Zusammengehörige Dienste in einem Stack zusammenfassen. Stacks lassen sich mit einem einzigen Klick auf „Pull and redeploy“ komplett aktualisieren — alle enthaltenen Images werden neu gepullt, alle Container neu erstellt.
„Pull and redeploy“ ist ausgegraut – was tun? (portainer stack pull and redeploy greyed out)
Der Button ist ausgegraut, wenn der Stack in einem Fehlerzustand ist oder außerhalb von Portainer verändert wurde. Vorgehen:
- Stack-Status in der Stack-Ansicht prüfen
- Falls Stack fehlerhaft: Compose-File neu importieren und Stack neu deployen
- Falls Stack außerhalb von Portainer verändert wurde: Stack löschen und neu anlegen — Portainer muss die Kontrolle zurückbekommen
Portainer Container auf Raspberry Pi / ARM64 updaten (Portainer update container Raspberry Pi ARM64)
Der Update-Workflow ist identisch zu x86-Systemen. Zu beachten: Nicht alle Images auf Docker Hub bieten ARM64-Builds an. Vor dem Pull prüfen, ob das Image auf Docker Hub unter „Tags“ eine linux/arm64-Variante listet. Multi-Arch-Images (erkennbar am manifest-Eintrag) funktionieren automatisch korrekt. Images ohne ARM64-Support schlagen beim Pull auf dem Raspberry Pi Angebot fehl — kein Fehler im Workflow, sondern ein fehlendes Build des Anbieters.
Docker Container in Portainer auf Synology DSM 7 / QNAP Container Station / Unraid / TrueNAS Scale / Proxmox LXC updaten
Der Portainer Update-Workflow (Pull → Recreate bzw. Stack → Pull and redeploy) ist plattformunabhängig identisch. Plattformspezifische Stolperfallen:
- Synology DSM 7: Portainer läuft als Container im Container Manager. Portainer selbst updaten erfordert einen separaten Schritt über den Container Manager.
- QNAP Container Station: Container Station hat eine eigene Update-UI — Portainer läuft dort als Container und hat keinen Zugriff auf Container-Station-native Features.
- Unraid: Portainer läuft als Community-App. Updates über Portainer selbst, nicht über das Unraid-App-System.
- TrueNAS Scale: Portainer läuft als App oder manuell installierter Container. Kubernetes-basierte Apps in TrueNAS Scale werden nicht über Portainer verwaltet.
- Proxmox LXC: Docker läuft im LXC-Container, Portainer verwaltet diese Docker-Instanz normal. Kein Unterschied im Update-Workflow.
Portainer CE vs. BE: Update-Workflow Unterschiede
| Feature | CE (kostenlos) | BE (kostenpflichtig) |
|---|---|---|
| Manueller Pull + Recreate | ✅ | ✅ |
| Stack Pull and redeploy | ✅ | ✅ |
| Automatische Image-Update-Benachrichtigungen | ❌ | ✅ |
| Erweiterte Stack-Rollback-Funktionen | ❌ | ✅ |
| Automatisierte Redeployments / Webhooks | Eingeschränkt | ✅ |
| Für Heimserver mit manuellen Updates | Ausreichend | Overkill |
Umgebungsvariablen gehen beim Recreate verloren – was tun? (portainer recreate container environment variables verloren)
Umgebungsvariablen, die direkt im Portainer-GUI eingetragen wurden, können beim Recreate verloren gehen, wenn der Container ursprünglich per CLI erstellt wurde. Fix: Umgebungsvariablen immer in einem Stack (Compose-File) definieren — dann bleiben sie beim „Pull and redeploy“ automatisch erhalten. Für bestehende Einzel-Container: Variablen vor dem Recreate in der Container-Konfiguration in Portainer eintragen und speichern.
Wie erzwinge ich in Portainer einen neuen Image-Pull, obwohl „Image up to date“ angezeigt wird? (how to force portainer to pull new image)
- Images → betroffenes Image suchen
- Image löschen (nur möglich, wenn kein Container damit läuft — Container vorher stoppen)
- Container-Detail → „Pull the latest image“ → Portainer muss jetzt von Docker Hub laden
- Recreate ausführen
Alternativ: Expliziten Versions-Tag im Container-Image-Feld eintragen (z. B. von nginx:latest auf nginx:1.27.0 wechseln) — Portainer erkennt den Unterschied und lädt das neue Image.
Fazit
Der Portainer Update-Workflow besteht aus zwei Pflichtschritten: Pull, dann Recreate — nicht Pull, dann Restart. Wer das verinnerlicht und Volumes korrekt konfiguriert hat, aktualisiert Container ohne Datenverlust und ohne Kommandozeile.
Unsere Empfehlungen

* Affiliate-Links – beim Kauf erhalten wir ggf. eine Provision.
Preisvergleich
| Produkt | smartkram | Fachhandel | Amazon | eBay |
|---|---|---|---|---|
| Raspberry Pi | smartkram ↗ | reichelt elektronik DE ↗ | Amazon ↗ | eBay ↗ |
* Affiliate-Links – beim Kauf erhalten wir ggf. eine Provision.
✍️ Autor: homeserverlab-Redaktion
🔄 Zuletzt aktualisiert: 9. Juni 2026







