Es ist Montagmorgen, 9:00 Uhr. Du öffnest deinen Laptop, um an dem neuen Shopware DDEV-Projekt weiterzuarbeiten. Normalerweise würdest du jetzt 15 Minuten damit verbringen, deine lokale Entwicklungsumgebung zu starten, verschiedene Services hochzufahren und zu hoffen, dass alles wie gestern funktioniert. Doch heute tippst du einfach `ddev start` in dein Terminal – und binnen Sekunden steht deine komplette Shopware-Entwicklungsumgebung bereit. Willkommen in der Welt von DDEV.
DDEV ist weit mehr als nur ein weiteres lokales Entwicklungstool. Es ist eine durchdachte Docker-basierte Lösung, die speziell dafür entwickelt wurde, die Komplexität moderner Webentwicklung zu reduzieren. Während Docker selbst unglaublich mächtig ist, erfordert es oft tiefes technisches Verständnis und aufwendige Konfiguration. DDEV hingegen abstrahiert diese Komplexität und bietet dir sofort einsatzbereite Entwicklungsumgebungen.
Für Shopware-Entwickler bringt DDEV besondere Vorteile mit sich: Die Integration ist nahtlos, die Konfiguration erfolgt automatisch, und du erhältst eine Umgebung, die der Produktionsumgebung sehr nahe kommt – ohne stundenlange Setup-Prozesse.
| Vorteil | Beschreibung |
|---|---|
| Schneller Start | Projekte sind in wenigen Sekunden einsatzbereit |
| Konsistente Umgebungen | Identische Setups für alle Teammitglieder |
| Shopware-optimiert | Vorkonfigurierte Templates speziell für Shopware |
| Integrierte Tools | PHP, MySQL, Redis, Mailhog und mehr bereits enthalten |
| Einfache Verwaltung | Intuitive Befehle für alle wichtigen Operationen |
Bevor du mit DDEV durchstartest, stelle sicher, dass Docker auf deinem System installiert ist. DDEV benötigt Docker als Grundlage – aber keine Sorge, du musst keine komplexen Docker-Konfigurationen erstellen.
Die Installation variiert je nach Betriebssystem:
macOS (mit Homebrew):
brew install ddev/ddev/ddev
Windows:
Lade den Installer von der offiziellen DDEV-Website herunter und folge dem Setup-Assistenten.
Linux:
curl -fsSL https://apt.fury.io/drud/gpg.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/ddev.gpg > /dev/null
echo "deb [signed-by=/etc/apt/trusted.gpg.d/ddev.gpg] https://apt.fury.io/drud/ * *" | sudo tee /etc/apt/sources.list.d/ddev.list
sudo apt update && sudo apt install ddev
Nach der Installation erstellst du dein erstes Shopware-Projekt mit wenigen Befehlen:
mkdir mein-shopware-shop && cd mein-shopware-shop
ddev config --project-type=shopware6 --docroot=public
ddev start
ddev composer create-project shopware/production
ddev exec bin/console system:install --basic-setup
ddev launch
Diese wenigen Zeilen erstellen eine vollständige, funktionsfähige Shopware-Installation. DDEV kümmert sich automatisch um:
DDEV erstellt automatisch eine `.ddev/config.yaml`-Datei in deinem Projektverzeichnis. Für Shopware-Projekte empfiehlt sich folgende Optimierung:
name: mein-shopware-projekt
type: shopware6
php_version: "8.3"
database:
type: mysql
version: "8.0"
webserver_type: nginx-fpm
router_http_port: "80"
router_https_port: "443"
upload_dirs:
- media
webimage_extra_packages:
- php-redis
hooks:
post-start:
- exec: bin/console cache:clear --env=dev
Shopware profitiert erheblich von Redis als Cache-System. Die Integration in DDEV ist denkbar einfach:
services:
redis:
image: redis:7
ports:
- "6379"
Ergänze deine `.env.local` um:
REDIS_URL=redis://redis:6379
Ein großer Vorteil von DDEV ist die integrierte Mailhog-Funktionalität. Alle E-Mails, die deine Shopware-Installation versendet, werden abgefangen und können über die Web-Oberfläche eingesehen werden. Das ist besonders nützlich für:
Zugriff auf Mailhog erhältst du über `ddev describe` – die URL wird dir dort angezeigt.
DDEV bietet eine Fülle von Befehlen, die deinen Entwicklungsalltag erheblich erleichtern:
Projektmanagement:
# Projekt starten
ddev start
# Projekt stoppen
ddev stop
# Projekt-Informationen anzeigen
ddev describe
# Projekt löschen (nur Container, Code bleibt erhalten)
ddev delete
Shopware-spezifische Befehle:
# Shopware-Konsole nutzen
ddev exec bin/console cache:clear
# Plugin installieren
ddev exec bin/console plugin:install MyPlugin
# Datenbank-Migration
ddev exec bin/console database:migrate
# Admin-User erstellen
ddev exec bin/console user:create admin
Datenbank-Operationen:
# Datenbank exportieren
ddev export-db --file=backup.sql.gz
# Datenbank importieren
ddev import-db --file=backup.sql.gz
# Direkte MySQL-Verbindung
ddev mysql
# Datenbank-Snapshot erstellen
ddev snapshot
DDEV bringt alle wichtigen Entwicklertools bereits mit:
# Composer-Befehle
ddev composer install
ddev composer require shopware/core
# Node.js und NPM
ddev npm install
ddev npx webpack
# Yarn Support
ddev yarn install
ddev yarn build
Debugging ist ein essentieller Teil der Entwicklung. DDEV macht die Xdebug-Konfiguration zum Kinderspiel:
# Xdebug aktivieren
ddev xdebug on
# Xdebug-Status prüfen
ddev xdebug status
# Xdebug deaktivieren
ddev xdebug off
Die IDE-Konfiguration erfolgt automatisch – du musst nur noch Breakpoints setzen und loslegen.
Für Performance-Analysen bietet DDEV integrierte XHProf-Unterstützung:
ddev xhprof on
# ... Code ausführen ...
ddev xhprof off
Die Profiling-Ergebnisse sind über die DDEV-Web-Oberfläche abrufbar.
DDEV eignet sich hervorragend für Projekte mit mehreren Sales Channels oder verschiedenen Umgebungen:
additional_hostnames:
- shop-de.ddev.site
- shop-en.ddev.site
- b2b.ddev.site
Jede Domain kann unterschiedliche Shopware-Konfigurationen verwenden.
Seit Shopware 6.7 nutzt das System Vite statt Webpack für die Frontend-Entwicklung. DDEV unterstützt dies nahtlos:
Erstelle eine `.ddev/config.vite.yaml`:
web_environment:
- HOST=0.0.0.0
- ADMIN_PORT=9997
- PROXY_URL=${DDEV_PRIMARY_URL}:9998
web_extra_exposed_ports:
- name: admin-proxy
container_port: 9997
https_port: 9997
- name: storefront-proxy
container_port: 9998
https_port: 9998
# Administration Watcher
ddev exec bin/watch-administration.sh
# Storefront Watcher
ddev exec bin/watch-storefront.sh
Die Development-Server sind dann über `https://deinprojekt.ddev.site:9997` (Admin) und `https://deinprojekt.ddev.site:9998` (Storefront) erreichbar.
Das DDEV-Ökosystem bietet zahlreiche Addons, die speziell für E-Commerce-Entwicklung nützlich sind:
ddev add-on get ddev/ddev-elasticsearch
ddev restart
ddev add-on get ddev/ddev-adminer
ddev add-on get ddev/ddev-solr
DDEV kann durchaus ressourcenhungrig sein. Hier einige Optimierungstipps:
Docker-Ressourcen anpassen:
DDEV-spezifische Optimierungen:
# In .ddev/config.yaml
performance_mode: mutagen # Für macOS
Für wiederkehrende Setups kannst du eigene Projekt-Templates erstellen:
# Template-Verzeichnis erstellen
mkdir ~/.ddev/project-templates/shopware-custom
# Basis-Konfiguration kopieren
cp .ddev/config.yaml ~/.ddev/project-templates/shopware-custom/
# Template nutzen
ddev config --project-template=shopware-custom
Wenn Standard-Ports bereits belegt sind:
router_http_port: "8080"
router_https_port: "8443"
Bei großen Shopware-Installationen können Speicherprobleme auftreten:
webimage_extra_packages:
- php8.3-dev
php_ini:
memory_limit: "512M"
max_execution_time: "300"
database:
type: mysql
version: "8.0"
mysql_options:
innodb_buffer_pool_size: "512M"
DDEV brilliert in der Team-Entwicklung. Einige Best Practices:
Versionierung der Konfiguration:
Die `.ddev/`-Verzeichnisse gehören ins Git-Repository – so nutzen alle Teammitglieder identische Umgebungen.
Datenbank-Snapshots teilen:
# Snapshot erstellen
ddev snapshot --name=initial-data
# Snapshot teilen (über Cloud-Storage o.ä.)
# Snapshot importieren
ddev snapshot restore initial-data
Für neue Teammitglieder kannst du Setup-Skripte erstellen:
#!/bin/bash
# setup-project.sh
ddev start
ddev import-db --file=initial-data.sql.gz
ddev import-files --source=media-files.tar.gz
ddev exec bin/console cache:clear
ddev launch
DDEV eignet sich auch hervorragend für automatisierte Tests:
name: Shopware Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup DDEV
uses: ddev/github-action-setup-ddev@v1
- name: Start DDEV
run: ddev start
- name: Run Tests
run: ddev exec vendor/bin/phpunit
| Feature | DDEV | XAMPP/WAMP |
|---|---|---|
| Isolation | ✅ Vollständig | ❌ System-global |
| Versionsverwaltung | ✅ Beliebige Versionen | ❌ Eine Version |
| Team-Konsistenz | ✅ Identische Umgebungen | ❌ Individuelle Setups |
| Production-Nähe | ✅ Docker-basiert | ❌ Windows/Mac-spezifisch |
DDEV basiert auf Docker Compose, abstrahiert aber die Komplexität erheblich. Während Docker Compose maximale Flexibilität bietet, ermöglicht DDEV schnellere Entwicklungszyklen durch vorgefertigte Konfigurationen.
Die Entwicklung von DDEV schreitet rasant voran. Aktuelle Trends und kommende Features:
Die Shopware-Community arbeitet aktiv an DDEV-Integrationen:
DDEV transformiert die Art, wie du Shopware-Projekte entwickelst. Statt Zeit mit Umgebungs-Setup zu verschwenden, konzentrierst du dich auf das, was wirklich zählt: innovative E-Commerce-Lösungen zu schaffen.
Die Kombination aus sofortiger Einsatzbereitschaft, konsistenten Umgebungen und mächtigen Entwicklertools macht DDEV zur ersten Wahl für moderne Shopware-Entwicklung. Egal ob du Plugins entwickelst, Themes erstellst oder komplexe B2B-Lösungen baust – DDEV bietet die stabile Grundlage, die du brauchst.
Starte noch heute mit DDEV und erlebe, wie viel produktiver Shopware-Entwicklung sein kann. Dein zukünftiges Ich wird dir dafür danken, wenn du morgens mit einem einfachen `ddev start` sofort loslegen kannst, anstatt erst einmal 15 Minuten mit der Umgebung zu kämpfen.
Die Investition in DDEV ist eine Investition in deine Produktivität – und in die Qualität deiner Shopware-Projekte.