Haben Sie Daten eines Docker-Containers in einem Volume – also außerhalb des Containers – abgelegt, können Sie für den Inhalt des Volumes Backups erstellen und auch wieder zurückspielen.
Der Befehl für das Backup eines Volumes im Terminal sieht auf den ersten Blick etwas kryptisch aus, ist aber sehr logisch aufgebaut. Wir erklären Schritt für Schritt, was jeder Teil bewirkt:
Der Befehl im Überblick
sudo tar -czvf wp_content-backup.tar.gz -C /var/lib/docker/volumes/wp_content/_data .
Dieser Befehl erstellt ein komprimiertes Backup-Archiv (eine .tar.gz
-Datei) vom Inhalt des Docker-Volumes wp_content
, das unter /var/lib/docker/volumes/...
gespeichert ist.
Erklärung der einzelnen Teile
Teil | Bedeutung |
---|---|
sudo | Führt den Befehl mit Administratorrechten aus – nötig wegen Zugriff auf /var/lib/docker/... |
tar | Das Programm, das Archive erstellt oder entpackt |
-c | create – ein neues Archiv erstellen |
-z | gzip-Komprimierung anwenden (→ .tar.gz Datei) |
-v | verbose – zeigt während des Vorgangs die bearbeiteten Dateien an |
-f wp_content-backup.tar.gz | Speichert das Archiv unter diesem Dateinamen im aktuellen Verzeichnis |
-C /var/lib/docker/volumes/wp_content/_data | Wechsle in dieses Verzeichnis, bevor das Archiv erstellt wird |
. | Füge alle Inhalte dieses Verzeichnisses in das Archiv ein |
Was passiert konkret?
Der Befehl:
- Wechselt intern ins Verzeichnis:/var/lib/docker/volumes/wp_content/_data
- Packt den gesamten Inhalt dieses Ordners in ein Archiv namens:wp_content-backup.tar.gz… das im aktuellen Verzeichnis (z. B. Persönlicher Ordner) landet.
- Zeigt währenddessen jede Datei, die ins Archiv kommt (wegen
-v
).
Ergebnis
Man erhält eine komprimierte Sicherung von allem, was in wp_content
liegt:
- hochgeladene Medien (Bilder, PDFs etc.)
- Installierte Themes und Plugins
- Benutzerdefinierte CSS/JS-Dateien usw.


Wohin mit dem Backup?
Sinnvoll ist es, das Backup im gleichen Verzeichnis zu speichern, in dem sich auch die compose.yaml
Datei des gesicherten WordPress-Projekts befindet. Das erhöht die Übersicht und ist vor allem praktisch, wenn Sie später eine Versionsverwaltung nutzen möchten.
my-wp_1/
|--- docker-compose.yaml
|--- wp_content-backup.tar.gz
Hinweis: Dadurch ändert sich der Pfad zur Backup-Datei. Für das Backup wechseln Sie zunächst in Ihren Projektordner und starten dann den Backup-Befehl:
# zuerst in das Verzeichnis wechseln:
cd my-wp_1
# dann das Backup starten:
sudo tar -czvf wp_content-backup.tar.gz -C /var/lib/docker/volumes/wp_content/_data .
Und der Restore-Befehl:
# zuerst in das Verzeichnis wechseln:
cd my-wp_1
# dann der Restore-Befehl:
sudo tar -xzvf wp_content-backup.tar.gz -C ./var/lib/docker/volumes/wp_content/_data
Wenn Sie möchten, können Sie einen Blick in das Backup-Archiv werfen. Mit einem Doppelklick auf den Archiv-Ordner wird er entpackt.


Wiederherstellen
Zum Zurückspielen (Restore) in ein Volume:
sudo tar -xzvf wp_content-backup.tar.gz -C /var/lib/docker/volumes/wp_content/_data
⚠️ Wichtig: Container vorher stoppen, damit es keine Konflikte gibt:
docker compose down
Und danach evtl. die Rechte im Container prüfen:
docker exec -it my-wp_1 bash<br>chown -R www-data:www-data /var/www/html/wp-content
Mit dem ersten Befehl öffnen Sie ein interaktives Terminal innerhalb des WordPress-Containers. Dort haben Sie Zugriff auf das Dateisystem des Containers, einschließlich aller installierten Plugins, Themes und Uploads.
Der zweite Befehl sorgt dafür, dass das Verzeichnis wp-content
– einschließlich aller enthaltenen Dateien und Unterverzeichnisse (Option -R
) – dem Benutzer und der Gruppe www-data
zugeordnet wird. Das ist wichtig, damit der Webserver innerhalb des Containers die nötigen Schreibrechte besitzt.
Hintergrund zu www-data
www-data
ist der Standardbenutzer, unter dem Apache im Container läuft.- Ohne die richtigen Rechte kann WordPress z. B. keine Bilder hochladen oder Plugins installieren.