Never Code Alone Logo Never Code Alone
Das Bild zeigt das Logo von DDEV. Es besteht aus einer stilisierten gelben Leiterplatten-Grafik auf der linken Seite, die wie der Buchstabe 'D' geformt ist. Rechts daneben steht der Schriftzug 'DDEV' in einer modernen blauen Schrift, wobei das zweite 'E' durch einen gelben und einen blauen horizontalen Balken dargestellt wird.

DDEV: Lokale Entwicklungsumgebung für Web-Projekte

DDEV ist eine Open-Source-Entwicklungsumgebung, die auf Docker basiert und speziell für Web-Entwickler konzipiert wurde. Es ermöglicht die einfache Erstellung, Verwaltung und Replikation von lokalen Entwicklungsumgebungen für verschiedene Web-Technologien wie PHP, Node.js, Python und mehr. DDEV zeichnet sich durch seine Benutzerfreundlichkeit, Flexibilität und die Fähigkeit aus, komplexe Entwicklungsumgebungen schnell und konsistent aufzusetzen.

 

Mit DDEV können Entwickler:

  • Schnell projektspezifische Entwicklungsumgebungen erstellen
  • Verschiedene Versionen von Webservern, Datenbanken und PHP problemlos verwalten
  • Eine konsistente Entwicklungsumgebung im Team gewährleisten
  • Den Übergang zwischen verschiedenen Projekten vereinfachen


 

Installation und Einrichtung

Die Installation von DDEV ist dank seiner plattformübergreifenden Natur relativ einfach:

1. Voraussetzungen installieren:

  • Docker Desktop (für Windows und macOS)
  • Docker Engine und Docker Compose (für Linux)

2. DDEV installieren: 

Für macOS mit Homebrew:

Code:
          

brew install ddev/ddev/ddev

Für Windows mit Chocolatey:

Code:
          

choco install ddev

Für Linux:

Code:
          

curl -fsSL https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash

3. Installation überprüfen:

Code:
          

ddev --version

4. Projekt initialisieren:
Navigieren Sie zum Projektverzeichnis und führen Sie aus:

Code:
          

ddev config

5. Umgebung starten:

Code:
          

ddev start

Diese Schritte setzen eine grundlegende DDEV-Umgebung auf. Die Konfiguration kann je nach Projektanforderungen angepasst werden.

DDEV Ubuntu Upgrade: - einfach in /tmp ausführen

Code:
          

curl -fsSL https://ddev.com/install.sh | bash

Konfiguration und Anpassung

DDEV bietet umfangreiche Konfigurationsmöglichkeiten, die in der .ddev/config.yaml Datei definiert werden:

1. Grundlegende Projektkonfiguration:

Code:
          

name: mein-projekt
type: php
docroot: web
php_version: "7.4"
webserver_type: nginx-fpm

2. Datenbank-Konfiguration:

Code:
          

database:
 type: mysql
 version: "5.7"

3. Zusätzliche Services:

services:
 - name: solr
   type: solr:8
 - name: redis
   type: redis:6

Benutzerdefinierte Hooks:
In .ddev/hooks können Sie Skripte definieren, die zu bestimmten Zeitpunkten ausgeführt werden, z.B.:

Code:
          

hooks:
 post-start:
   - exec: npm install
   - exec: composer install

5. Umgebungsvariablen:

Code:
          

web_environment:
 - TYPO3_CONTEXT=Development

Diese Konfigurationen ermöglichen es, die Entwicklungsumgebung genau an die Bedürfnisse des Projekts anzupassen.

Verwendung von DDEV

1. Projekt starten/stoppen:

Code:
          

ddev start
ddev stop

2. SSH in Container:

Code:
          

ddev ssh

3. Datenbank-Operationen:

Code:
          

ddev import-db --src=dump.sql.gz
ddev export-db --file=dump.sql.gz

4. Composer und NPM:

Code:
          

ddev composer install
ddev npm install

5. Xdebug aktivieren/deaktivieren:

Code:
          

ddev xdebug on
ddev xdebug off

6. Logs anzeigen:

Code:
          

ddev logs

7. Projekt-Informationen:

ddev describe

Diese Befehle decken die meisten alltäglichen Entwicklungsaufgaben ab und machen die Arbeit mit DDEV effizient und unkompliziert.

Integration in CI/CD-Pipelines

DDEV kann in CI/CD-Pipelines integriert werden, um konsistente Testumgebungen zu gewährleisten:

1. GitLab CI Beispiel:

Code:
          

stages:
 - test

test:
 stage: test
 image: drud/ddev-gitpod-base:latest
 services:
   - docker:dind
 variables:
   DOCKER_HOST: tcp://docker:2375
 before_script:
   - ddev config
   - ddev start
 script:
   - ddev composer install
   - ddev exec phpunit

2. GitHub Actions Beispiel:

Code:
          

name: CI
on: [push, pull_request]
jobs:
 test:
   runs-on: ubuntu-latest
   steps:
   - uses: actions/checkout@v2
   - name: Install DDEV
     run: curl -LO https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh && bash install_ddev.sh
   - name: Start DDEV
     run: ddev start
   - name: Run Tests
     run: ddev composer test

Diese Integrationen ermöglichen es, Tests in einer Umgebung durchzuführen, die der lokalen Entwicklungsumgebung entspricht, was die Zuverlässigkeit der CI/CD-Pipeline erhöht.

CYPRESS.IO Ambassador und IT Consultant für QA Engenieering und Qualität in PHP Projekten.

Erreichen Sie unsere PHP Consultant Spezialisten

Wir sind Experten für PHP und helfen Ihnen, Ihre digitalen Herausforderungen zu meistern. Unser erfahrenes Team unterstützt Sie bei PHP Updates, PHP Refactoring und berät Sie remote zu allen Fragen rund um PHP. Mit unseren vollautomatischen CI/CD Deployments und einer robusten Docker-Infrastruktur bringen wir Ihre PHP-Projekte auf das nächste Level. Vertrauen Sie auf unsere Expertise für zuverlässige und skalierbare PHP-Lösungen.

Häufig gestellte Fragen (FAQ)

Kann DDEV mit verschiedenen PHP-Versionen umgehen?

Ja, DDEV unterstützt multiple PHP-Versionen, die in der config.yaml spezifiziert werden können.

Wie kann ich benutzerdefinierte Docker-Images in DDEV verwenden?

Sie können benutzerdefinierte Images in der config.yaml unter webimage und dbimage definieren.

Unterstützt DDEV mehrere Datenbanken in einem Projekt?

Ja, Sie können zusätzliche Datenbanken über die services Konfiguration hinzufügen.

Wie kann ich DDEV mit einem existierenden Docker-Setup integrieren?

DDEV kann neben anderen Docker-Containern laufen, achten Sie nur auf Portkonflikte.

Kann ich DDEV für Front-End-Entwicklung nutzen?

Ja, DDEV unterstützt Front-End-Tools wie Node.js und kann für moderne JavaScript-Frameworks konfiguriert werden.

Wie führe ich automatisierte Tests in DDEV durch?

Sie können Test-Suites innerhalb des DDEV-Containers mit ddev exec ausführen.

Unterstützt DDEV HTTPS für lokale Entwicklung?

Ja, DDEV bietet automatisch generierte SSL-Zertifikate für lokale HTTPS-Verbindungen.

Wie kann ich die Performance von DDEV optimieren?

Nutzen Sie NFS für verbesserte Dateisystem-Performance und passen Sie die Docker-Ressourcen an.

Kann DDEV für die Entwicklung von Microservices verwendet werden?

Ja, DDEV kann mehrere Services innerhalb eines Projekts verwalten, was es ideal für Microservices-Architekturen macht.

Wie gehe ich mit Datenbankmigrationen in DDEV um?

Sie können Migrationsskripte als Hooks in DDEV konfigurieren oder sie manuell mit ddev exec ausführen.

Fazit

DDEV hat sich als leistungsstarke und flexible Lösung für lokale Entwicklungsumgebungen etabliert. Es vereinfacht den Prozess der Einrichtung und Verwaltung von Entwicklungsumgebungen erheblich, was zu einer verbesserten Produktivität und Konsistenz im Entwicklungsprozess führt. Die Fähigkeit, komplexe Umgebungen schnell zu replizieren und anzupassen, macht DDEV zu einem wertvollen Werkzeug für Entwickler und Teams jeder Größe.

 

Die Integration von DDEV in CI/CD-Pipelines ermöglicht es zudem, die Lücke zwischen Entwicklung und Produktion zu schließen, indem konsistente Umgebungen über den gesamten Entwicklungszyklus hinweg gewährleistet werden. Mit seiner aktiven Community und kontinuierlichen Weiterentwicklung bleibt DDEV an der Spitze der lokalen Entwicklungslösungen und passt sich ständig an die sich ändernden Bedürfnisse moderner Webentwicklung an.

Weiterführende Ressourcen

DDEV Bildergalarie

DDEV ist ein leistungsstarkes und flexibles Tool für lokale Entwicklungsumgebungen, das speziell für Webentwickler und Teams entwickelt wurde. Es unterstützt eine Vielzahl von Technologien und Frameworks wie TYPO3, Magento, Sulu und Docker. Mit seinen erweiterten Funktionen, wie der Integration von phpMyAdmin für die Datenbankverwaltung oder der Möglichkeit, Projekte über Dienste wie Ngrok öffentlich zugänglich zu machen, erleichtert DDEV die Entwicklungsarbeit erheblich.

 

Die hochgeladenen Bilder verdeutlichen, wie vielseitig DDEV in der Anwendung ist. Von der Konfiguration einer Datenbank in phpMyAdmin über GitHub-Integrationen bis hin zu Tutorials und Befehlen, die TYPO3-Upgrades automatisieren – DDEV bietet eine zentrale Plattform für moderne Webentwicklung. Mit DDEV können Entwickler nicht nur ihre Projekte lokal optimieren, sondern auch nahtlos in Teamumgebungen und komplexen Technologien wie Docker arbeiten.

 

Die Visualisierungen, wie das DDEV-Tutorial zu Ngrok oder die Kombination mit CMS-Plattformen wie Magento und Sulu, zeigen, wie DDEV für vielfältige Anforderungen angepasst werden kann. Es ist ein unverzichtbares Tool für alle, die robuste und skalierbare Entwicklungsumgebungen benötigen.

YouTube-Thumbnail für ein Tutorial zur Nutzung von DDEV Serve mit Localhost-Projekten über Ngrok, mit einem Mann, der auf einem grünen Hintergrund mit einem Klemmbrett posiert.

Visualisierung eines Update-Skripts für TYPO3 mit DDEV. Text zeigt verschiedene Versionsnummern und einen Befehl ‘./start_update.sh’ auf grünem Hintergrund.

Screenshot von phpMyAdmin mit einer Liste von Datenbanktabellen und Suchoptionen, die zur Verwaltung einer Datenbank angezeigt werden."

GitHub-Seite für das ddev-phpmyadmin Add-on. Das Logo des Add-ons ist sichtbar, zusammen mit Informationen über Contributors, Issues, Stars und Forks.

Kombiniertes Logo von DDEV und Magento. Der Text zeigt, dass Magento ein Unternehmen von Adobe ist, unterstützt durch DDEV.

Das Bild zeigt das Logo von DDEV. Es besteht aus einer stilisierten gelben Leiterplatten-Grafik auf der linken Seite, die wie der Buchstabe 'D' geformt ist. Rechts daneben steht der Schriftzug 'DDEV' in einer modernen blauen Schrift, wobei das zweite 'E' durch einen gelben und einen blauen horizontalen Balken dargestellt wird.

Terminal-Screenshot, der die Installation von Oh My Zsh zeigt, mit einem ASCII-Schriftzug 'Oh My Zsh' und der Aufforderung, die Standard-Shell auf Zsh zu ändern.

YouTube Thumbnail Never Code Alone mit Logos von DDEV, Docker und Sulu vor einem Matrix-inspirierten Hintergrund. Der Text 'Never Code Alone' und 'Sulu' stehen im Vordergrund.