====== Blog ====== Mein Blog basiert derzeit auf Wordpress innerhalb von Docker Containern. Er ist nach aussen verfügbar unter: https://cms.manhart.space/ Weiters existiert eine Testinstanz (Klon) um kritische Operationen zunächst zu testen um bei Erfolg diese im Live System nachzuspielen: https://test-cms.manhart.space/ Die Zugangsdaten finden sich in meinem privaten Passwortsafe. ===== Artikel ===== Artikel sollen immer den gleichen Aufbau haben: * Introtext * Inhaltsverzeichnis mit Ankerlinks * Vorbedingungen * beliebig viele Unterteilungen * Fazit * Quellen Um einen Artikel anzulegen, kopiert man sich am Besten einen Vorhandenen und passt diesen dann an (Wichtig: Ankernamen nicht vergessen) ===== Updates ===== Updates sind nicht ganz einfach, da das System keinen ftp Server öffnet, welches aber der bevorzugte Mechanismus von Wordpress wäre. Daher wird angeraten Updates **immer** zunächst am Testsystem durchzuführen und Probleme hier mitzuprotokollieren. ==== Plugins ==== Plugins (und Themes) können direkt im Wordpress aktualisiert werden, man sollte nur beachten, nicht F5 zu drücken, da dies einen Abbruch und das "Problem: Eingefroren im Maintenance Mode" auslösen kann. ==== Wordpress Version ==== Die Wordpress Version kann unr und sollte immer über den Container aktualisiert werden, dh. der Container wird durch einen neueren ersetzt. Hierzu geht man wie folgt vor: - Im Browser auf [[https://hub.docker.com/_/wordpress?tab=description|Docker Hub]] den aktuellsten Wordpress Alpine Container heraussuchen - Am Server gegen die Version im Compose File prüfen cd $DOCKER_SERVICES_HOME/wordpress cat docker-compose.yml - Gegebenenfalls die Version anpassen (sollte nur bei Major Versionen notwendig sein) - Den Container upgraden (hierzu muss man im Wordpress Docker-Compose Verzeichnis sein) docker-compose down -v; docker-compose pull; docker-compose up -d - Damit wurde das Volume zerstört, in welchem sich die Wordpress Installation befunden hat, und man muss zur Zeit folgendes Setting im wp-settings.php hinzufügen: docker exec -ti wordpress-test_wordpress_1 vi wp-settings.php # Shift + g drücken um ans Ende zu springen # i drücken und mit Return eine neue Zeile erstellen und folgenden Text einfügen: define('FS_METHOD', 'direct'); - Ausserdem muss man noch den Owner für wp-content neu festlegen: docker exec -ti wordpress_wordpress_1 chown www-data wp-content -R ==== Problem: Eingefroren im Maintenance Mode ==== **Symtom:** Wordpress zeigt nur die "Briefly unavailable for scheduled maintenance" Meldung an und ist sonst nicht mehr ansprechbar. **Ursache:** Ein Update ist im Prozess abgebrocken. **Lösung:** Im Docker Container im work Verzeichnis das File .maintenance entfernen. Hierzu folgende Befehle ausführen (der Containername muss ggf. angepasst werden): docker exec -ti wordpress-test_wordpress_1 rm .maintenance ===== Quelle(n) ===== * [[https://www.wpbeginner.com/wp-tutorials/how-to-fix-briefly-unavailable-for-scheduled-maintenance-error-in-wordpress/|Maintenance message freeze]] * [[https://github.com/moby/moby/issues/26824|Docker Network issue]] - Solved via Kernel update * [[https://stackoverflow.com/questions/640409/can-i-install-update-wordpress-plugins-without-providing-ftp-access|Updates without FTP access]] {{tag>IT Systeme Blog Wordpress}}