Eine lokale WordPress-Installation sichert eine performante Entwicklung an einer Webseite ohne Ladeverzögerungen ab: Durch eine lokale WordPress-Installation wird eine performante Entwicklung an einer Website ohne Ladezeiten ermöglicht.
Das Arbeiten an einer WordPress-Seite auf einem Produktivsystem birgt Risiken. Eine Änderung ist direkt sichtbar, obwohl diese vielleicht noch nicht wie erwartet funktioniert. Manchmal verursacht aber auch eine Server-Eigenschaft Probleme:
Langsames Internet kann dazu führen, dass Entwickler im Ausharrmodus vor dem Bildschirm sitzen und auf das Laden der Seite warten müssen. Bei einer lokalen WordPress-Installation gibt es diese Probleme nicht. Und DDEV ist ein tolles Tool, um eine WordPress-Seite lokal schnell aufzusetzen.
Es gibt natürlich auch andere Tools dafür. Aber ich halte DDEV für das geeignetste. Denn:
Eine moderne, schnelle und unkomplizierte Lösung hat DRUD Technology LLC 2017 entwickelt: DDEV ist ein Docker-basiertes Open-Source-Tool. Damit lässt sich eine stark vereinfachte, lokale PHP-Entwicklungsumgebung einrichten. In der Regel dauert das nur wenige Minuten.
DDEV bietet projektbezogene Umgebungskonfigurationen an, etwa für TYPO3, WordPress, Shopware, Backdrop CMS und Java-Anwendungen. Diese vorkonfigurierten Entwicklungsumgebungen lassen sich unkompliziert aufsetzen, aktualisieren, durch eigene Konfigurationen erweitern, versionieren und freigeben.
Es gibt zwei Versionen der Software: DDEV Local steht als Open-Source-Software allen frei zur Verfügung. DDEV LIVE ist das zugehörige Hosting-Produkt. Damit lassen sich Projekte in ein Staging- oder Production-System deployen und betreiben. Das allerdings ist nicht zwingend notwendig, denn man kann auch weiterhin mit allen gängigen Deployment-Methoden arbeiten.
DDEV ist für die Betriebssysteme Windows, macOS und Linux verfügbar. Im Folgenden beschreibe ich die schnelle WordPress Quickstart Installation unter Windows 10. Auf der Seite ddev.readthedocs.io findet sich eine hervorragende Dokumentation für alle, die nach einer Installationsmöglichkeit suchen oder Probleme haben.
Um WordPress mit DDEV nutzen zu können, ist es nötig, DDEV und Docker-Desktop auf dem System zu installieren. Beide Systeme lassen sich bequem über chocolatey installieren.
Das Setup in der PowerShell wird durch den Befehl choco install ddev gestartet.
Um Docker-Desktop zu installieren, nutzt man folgenden Befehl: choco install docker-desktop
Wenn beide Systeme installiert sind, wechseln wir in das Verzeichnis, in dem wir unser WordPress-Projekt installieren möchten.
cd mein-Wunsch-Verzeichnis
Hier erstellen wir uns unser Projektverzeichnis.
mkdir meine-wp-seite
Danach wechseln wir ins Projekt Verzeichnis.
cd meine-wp-seite
Nun lassen wir uns von DDEV die WordPress Konfiguration anlegen. Diese wird in die Datei config.yaml geschrieben.
ddev config --project-type=wordpress --docroot=web --create-docroot
Dann können wir die Docker-Container starten. Wichtig ist hierbei, dass Docker-Desktop bereits im Hintergrund läuft.
ddev start
Nachdem alle Container erfolgreich gestartet sind, ist an der Zeit, folgenden Composer-Befehl auszuführen. Wir bestätigen das Ausführen des Befehls mit „ja“ (y).
ddev composer create roots/bedrock
Nachdem die Installation erfolgreich ausgeführt wurde, ist es nun noch nötig, im Projektordner die .env-Datei zu bearbeiten. Dabei müssen folgende Eigenschaften geändert bzw. hinzugefügt werden.
DB_NAME=db
DB_USER=db
DB_PASSWORD=db
DB_HOST=db
WP_HOME=https://meine-wp-seite.ddev.site
WP_SITEURL=${WP_HOME}/wp
WP_ENV=development
Nun starten wir erneut DDEV.
ddev start
Nun die WordPress-Webseite aufrufen.
ddev launch
Wenn alle Schritte erfolgreich durchgeführt wurden, öffnet sich der Browser und wir werden vom wunderbaren WordPress-Setup begrüßt. Entwickler haben zusätzlich noch eine Vielzahl an Konfigurationsmöglichkeiten, um ihre Entwicklungsumgebung auf die individuellen Bedürfnisse anzupassen. Es lassen sich beispielsweise beliebige weitere Hostnamen auflisten, die beim nächsten „ddev start“ miterzeugt werden und aufgerufen werden können. Ein weiterer vorgefertigter Befehl ist ddev share, mit dem die lokale Instanz der Seite über eine öffentliche URL verfügbar gemacht werden kann. Damit lassen sich lokale Seiten wunderbar auch auf anderen Gerätetypen (wie dem Smartphone oder Tablet) testen. Ebenfalls lässt sich die benötigte PHP-Version festlegen. Als Webserver stehen NGINX oder Apache zur Auswahl. Außerdem lohnt es sich, wie bereits oben beschrieben, die Dokumentation zu DDEV zu lesen, um herauszufinden, was noch alles möglich ist.
Es gibt weitere Befehle für DDEV, die das Arbeiten vereinfachen:
ddev describe: zeigt Informationen, wie Datenbankzugänge, Hosting-URLs, PHP-Version
ddev list: zeigt alle ddev-Projekte an und deren Status
ddev logs: zeigt Logs, wie bspw. Error-Logs
ddev stop: stoppt laufende Container eines Projektes
ddev remove: entfernt Docker-Container
ddev remove –remove-data: entfernt Docker-Container und Datenbank
ddev ssh: wechselt in den Web-Container
ddev exec ls -al: führt Befehl im Container aus
ddev snapshot: erstellt ein Backup der Datenbank
Mit DDEV geht das initiale Setup ganz einfach von der Hand und ist schnell erledigt. Vor allem diese Argumente überzeugen:
Unterschiedliche Projekte haben unterschiedliche Anforderungen und Alternativen bei Open-Source-Webservern waren lange Zeit rar. Apache galt dabei als einzige Option, was den Umgang mit hohen Lasten erschwerte. Zum Glück haben sich die Zeiten geändert und neue Lösungen für spezielle Anforderungen sind entstanden. NGINX, Caddy, Lighthttpd, MonkeyServer und OpenLiteSpeed sind nur einige auf der langen Liste der Open-Source-Webserver, die heute zur Verfügung stehen. Deshalb ist es einer der wenigen Nachteile, dass DDEV bis jetzt lediglich Apache und Nginx zur Verfügung stellt. Die Auswahl weiterer Webserver ist ein Feature, das ich mir für die Zukunft wünsche.
Nach jahrelanger Erfahrung mit der Nutzung von DDEV für unsere WordPress-Projekte können wir bestätigen, dass WordPress-Systeme einfach aufzusetzen sind, schneller als gewohnt starten und sehr flüssig und stabil laufen. Bei 3m5. bearbeiten wir viele verschiedene Kundenwebseiten und nicht jeder Entwickler hat immer alle Projekte auf seinem Rechner eingerichtet. Mit DDEV sparen wir besonders bei wechselnden Entwicklern innerhalb der Projekte Zeit bei der fortlaufenden Betreuung. War es bislang so, dass vor allem für kleine Projekte Aufwand und Kosten für das Einrichten der Entwicklungsumgebung im Bezug zur Leistung des Produktes zu hoch waren, lassen sich diese jetzt schneller und damit günstiger umsetzen. Ein weiterer Pluspunkt: Das Angebot möglicher Systeme bietet mittlerweile ein interessantes Spektrum. Es wird auch in Zukunft erweitert werden. Wir können es deshalb allen, die mit PHP-Projekten arbeiten und verschiedene CMS lokal aufsetzen möchten, ans Herz legen.
Ab nach Sydney: Sechs Schülerinnen und Schüler eines Dresdner MINT-Gymnasiums vertreten Deutschland beim internationalen Finale des Wettbewerbs. Wir sponsern die Reisekosten.
Neos ist ein Open Source CMS, das von der Entwickler-Community lebt. Damit das CMS sich stetig weiter entwickeln kann, benötigt es viel Unterstützung. 3m5. leistet seinen Beitrag und ist nicht nur Platinum-Sponsor, sondern beteiligt sich auch in der Konzeption und Programmierung. Vom 04.10.2022 – 07.10.2022 fand in diesem Jahr der Neos-Sprint in Hamburg statt. Zwei unserer Entwickler waren mittendrin, statt nur dabei und programmierten fleißig mit am Neos Core.
Plugins sind nützliche Erweiterungen, die in der Entwicklung Zeit und Geld sparen. Die beliebstesten für das Neos CMS stellen wir Ihnen hier vor.