Ich habe derzeit einen WordPress-Container in Docker eingerichtet und mit einer MySQL-Datenbank auf demselben Computer verknüpft (d nicht in einem Docker-Container). Ich habe damit herumgespielt, die Website in meinem Browser zu bearbeiten, den WordPress-Container zu löschen und einen neuen zu erstellen, der mit derselben Datenbank verknüpft ist.
Als ich dies tat, blieben die Beispielbeiträge, die ich auf meiner Website erstellt hatte, bestehen, sodass ich davon ausging, dass meine Daten lokal von meiner Datenbank gespeichert wurden. Ich habe dann jedoch versucht, mehrere Websites mit WordPress Multisite mit einem WordPress-Container einzurichten. Dazu musste ich die WordPress-Konfigurationsdatei im WordPress-Container bearbeiten.
Ich habe diesen Container gelöscht und wie zuvor einen neuen erstellt. Ich habe versucht, die Konfigurationsänderungen in diesem Container zu replizieren, aber wenn ich zu meiner Website navigiere, wird mir nur ein weißer Bildschirm angezeigt. Das lässt mich vermuten, dass die MySQL-Datenbank plötzlich auf leere Tabellen zeigt.
Wo werden meine WordPress-Vorlagen/Infos tatsächlich gespeichert?
BEARBEITEN: Unten ist der Befehl, den ich ausführe
sudo docker run -p 80:80 --name wordpress_local -e WORDPRESS_DB_HOST=(machine's IP address) -e WORDPRESS_DB_USER=user -e WORDPRESS_DB_PASSWORD=password -d wordpress
Hinweis: Dies setzt voraus, dass ich eine lokale MySQL-Datenbank eingerichtet habe, die Verbindungen von akzeptiert 0.0.0.0
und hat einen Benutzer angerufen user
mit Passwort password
Ich weiß, dass mein Container ordnungsgemäß mit der Datenbank verknüpft ist, indem ich mir die Protokolle ansehe (und die Tatsache, dass ich auf die Website zugreifen kann – es wird nur eine leere Seite angezeigt).
BEARBEITEN 2: Wenn ich mir mein WordPress-Container-Dateisystem ansehe, kann ich durch verschiedene Ordner navigieren und Inhalte wie Themes/Plugins sehen, die ich installiert habe. Warum wird dies nicht auf meinem lokalen Computer gespeichert? (Entschuldigung, wenn dies eine dumme Frage ist – ich bin sowohl bei MySQL als auch bei Docker neu)
kannst du dein Dockerfile oder einen Reproducer zeigen?
– Benutzer2915097
11. Juni 2015 um 14:09 Uhr
Ich habe kein Dockerfile, sondern führe stattdessen nur einen Befehl aus, um meinen Container zum Laufen zu bringen. Die einzigen Dinge, die ich an meiner MySQL-Datenbank getan habe, sind: sicherzustellen, dass sie läuft, und sicherzustellen, dass sie einen Benutzer mit Berechtigungen für eine von mir erstellte WordPress-Datenbank hat
– kschah
11. Juni 2015 um 14:17 Uhr
Sie können jederzeit den WordPress-Container eingeben
docker exec -it container_id bash
und verwenden Sie lsof oder ein solches Tool, um zu sehen, wo es gespeichert ist– Benutzer2915097
11. Juni 2015 um 15:26 Uhr
ist Registry.hub.docker.com/_/wordpress Ihr Docker-Image?
– Thomasleveil
11. Juni 2015 um 16:30 Uhr
@Thomasleveil ja, ich glaube, das ist das Bild, das ich verwende
– kschah
11. Juni 2015 um 16:58 Uhr