YellowLeds Weblog v2

Artikel über Webdesign, Webstandards und Serendipity von Matthias Mees

Seite 1 von 123, insgesamt 123 Einträge

Schnelle lokale Stage mit ddev

„Mal eben schnell“ eine lokale Entwicklungsumgebung für ein PHP-CMS mit MySQL-Datenbank aufsetzen, aber keinen Bock auf das viele Gefummel mit MAMP, xampp & Co., aber eigentlich auch nicht genug Zeit für Docker? Ein Freelance-Kollege brachte neulich in einem Meeting ddev ins Gespräch, und ich muss sagen, ich bin einigermaßen begeistert.

ddev ist ein bisschen „wie jQuery für Docker“. Unter der Haube verwendet man immer noch Docker und docker-compose, aber ddev legt eine zusätzliche Schicht darüber, die das ganze wesentlich simpler zu bedienen macht. Es gibt sogenannte „Quickstarts“ für gängige Open-Source-PHP-CMS wie Wordpress, Drupal und TYPO3 (die meines Wissens auch dafür optimierte Docker-Images nutzen), aber im Prinzip sollte das Ganze mit jedem PHP-CMS funktionieren – erfolgreich selbst ausprobiert habe ich es bisher mit ProcessWire und Serendipity.

Eine lokale Stage für s9y aufsetzen

Man braucht also Docker und docker-compose, dann installiert man ddev und dann geht es im Terminal ganz schnell:

  1. git clone git@github.com:s9y/Serendipity.git s9y – frische Installation aus dem aktuellen master-Branch, anschließend mit cd s9y ins Verzeichnis wechseln
  2. ddev config – nun fragt ddev ein paar Details ab, von denen eigentlich nur wichtig ist, dass man als Projekt-Typ php wählt (das sollte ddev aber auch automagisch so erkennen)
  3. Standardmäßig wählt ddev nginx als Webserver und PHP 7.1 – ich würde empfehlen, die PHP-Version beizubehalten (s9y ist leider noch nicht ganz bereit für höhere Versionen), aber den Webserver auf Apache umzustellen. Dazu öffnet man die .ddev/config.yaml in einem Texteditor und ändert das zu webserver_type: apache-fpm.
  4. Nun startet man mit ddev start das Projekt, es lädt ein paar Dinge herunter und – zack – sollte die Stage über (in diesem Fall) http://s9y.ddev.local im Browser erreichbar sein.
  5. Abschließend spielt man noch wie gewohnt den s9y-Installer durch (die Zugangsdaten für die Datenbank verrät ddev describe, und schon hat man eine lokale s9y-Installation.

ddev hat noch ein paar Tricks im Ärmel, um z.B. laufende Stages bequem zu stoppen, Datenbanken oder Dateibäume zu importieren oder die aus der Entwicklungsumgebung versandten E-Mails abzufangen, aber das würde hier zu weit führen.