Share
Embed
Lokale TYPO3 Entwicklungsumgebung mit DDEV
Container-basierte Entwicklungsumgebung für TYPO3, auch für bestehende Projekte.
Peter Kraume
September 15, 2018
Transcript
15 slides
-
Peter Kraume • Senior TYPO3 Developer bei bgm websolutions •
Mitglied im Vorstand der TYPO3 Association • Mitorganisator des TYPO3camp Munich und der TYPO3 User Group Twitter: @cybersmog Mail: [email protected] Slides: http://de.slideshare.net/pk77/ -
Was ist DDEV? • Containerbasierte lokale Entwicklungsumgebung • basiert auf
Docker • erstellt automatisiert Container für Webserver und Datenbank • eingebauter Support für TYPO3, Drupal, WordPress und Backdrop • langfristig: Zusammenarbeit mit Hostern für Live Deployments • Open Source Software • Hersteller: Drud Technology LLC aus Denver, USA • Drud arbeitet mit der TYPO3 GmbH und TYPO3 Community zusammen -
Vorteile von DDEV • erstellt automatisiert für jedes Projekt Container
für Webserver und Datenbank • Plattformübergreifend verfügbar • funktioniert auch für bestehende Projekte • Multi-Projekt fähig • mehrere Hostnames pro Projekt • Unterstützung für verschiedene PHP Versionen • weitere enthaltene Entwicklertools: • Git • Composer • npm • phpMyAdmin • Mailhog • Xdebug • weitere Services (Container) wie z.B. Solr können angebunden werden -
Nachteile • bislang nur Nginx als Webserver verfügbar • seit
Version 1.2.0 (12. September 2018) experimenteller Apache Support (nicht unter Windows) • Bitte helft beim Testen und meldet Bugs und Probleme! -
System Anforderungen • Betriebssystem • Windows 10 Pro • macOS
Sierra oder neuer • aktuelle Linux Distribution, die Docker unterstützt • z.B. Ubuntu 14.04+, Debian Jessie+, Fedora 25+ • Docker 18.03 oder neuer • docker-compose 1.18.0 oder neuer -
TYPO3 Installation mit lokalem Composer • Voraussetzung: Composer ist im
Host Betriebssystem vorhanden composer create-project typo3/cms-base-distribution example-project ^9 cd example-project ddev config => alle Fragen mit Enter beantworten ddev start ddev describe => optional, zeigt Konfiguration touch public/FIRST_INSTALL => http://example-project.ddev.local/typo3/ install.php aufrufen und Installation abschließen -
TYPO3 Installation über Git • Voraussetzung: Git CLI oder grafischer
Git Client git clone http://github.com/TYPO3/ TYPO3.CMS.BaseDistribution.git -b 9.x example- project cd example-project mkdir -p public/typo3conf ddev config => Docroot Location: public => Project Type: typo3 vi .ddev/config.yaml => PHP Version auf 7.2 ändern => Hook aktivieren (letzten 3 Zeilen aktivieren) hooks: post-start: - exec: "composer install -d /var/www/html" -
TYPO3 Installation über Git ddev start => dauert deutlich länger,
da kein Composer Cache touch public/FIRST_INSTALL => http://example-project.ddev.local/typo3/ install.php aufrufen und Installation abschließen -
weitere ddev Befehle ddev list => zeigt alle DDEV Projekte
und Pfade an ddev stop => stoppt ein DDEV Projekt ddev remove => entfernt die Docker Container ddev remove --remove-data => entfernt die Docker Container und die Datenbank ddev describe => zeigt Infos, z.B. Datenbank Zugangsdaten -
weitere ddev Befehle ddev exec ls -la => führt den
Befehl im Docker Container aus ddev ssh => SSH Verbindung in den Web Container ddev import-db --src=dump.sql.gz => importiert DB Dumps (sql, sql.gz, tar.gz, zip) ddev logs => zeigt die Logs, z.B. Error Log ddev snapshot => erstellt einen Datenbank Snapshot ddev restore-snapshot => Wiederherstellung einer Datenbank aus Snapshot -
sonstiges • AdditionalConfiguration.php • in neuen TYPO3 Projekten wird die
Datei angelegt und die DB Zugangsdaten eingetragen • wenn die Datei schon existiert, müssen die DB Zugangsdaten manuell eingetragen werden (siehe ddev describe) • xdebug Support wird mitgeliefert • config.yaml => xdebug_enabled: true • Troubleshooting • ddev remove, wenn bei ddev start Fehlermeldung wegen DB Container angezeigt wird -
sonstiges • Versionierung der Konfiguration • .gitignore: • /.ddev/docker-compose.yaml •
/.ddev/db_snapshots • eigene docker-compose.xxxxx.yaml sollten versioniert werden • Update von ddev CLI (für jedes Projekt einzeln machen) • ddev config => alle Vorschläge bestätigen • ggf. in eigenen docker-compose.myname.yaml die Versionsnummer anpassen -
Hilfe / Doku • TYPO3 Slack Channel: #ddev • Installation:
https://ddev.readthedocs.io/en/latest/#installation • Bugs: https://github.com/drud/ddev/issues • Stack Overflow: https://stackoverflow.com/questions/tagged/ddev • Doku: https://ddev.readthedocs.io/en/latest/ • Weitere Services wie Solr: https://ddev.readthedocs.io/en/latest/users/extend/additional-services/ -
Vielen Dank! Twitter: @cybersmog Mail: [email protected] Slides: http://de.slideshare.net/pk77/ This work
is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.