Table of content
Mit Docker können Sie die stundenlange manuelle Einrichtung überspringen, die Probleme mit dem "es funktioniert auf meinem Rechner“ vermeiden und TYPO3 in wenigen Minuten starten. Klingt gut? Es wird noch besser. Es gibt jetzt zwei hilfreiche Möglichkeiten: die eine ist blitzschnell und anfängerfreundlich (DDEV), die andere gibt Ihnen die volle Kontrolle unter der Haube (WebDevOps Docker-Setup).
Dockerisieren wir TYPO3 auf die einfache (und smarte) Art!
Was ist TYPO3?
TYPO3 ist ein leistungsstarkes und robustes Content-Management-System (CMS), das für professionelle und unternehmensweite Websites entwickelt wurde. Es ist bekannt für seine Flexibilität, Skalierbarkeit und starke Mehrsprachigkeit und wird daher besonders in Europa häufig von Organisationen wie Universitäten, Behörden und Agenturen genutzt.
TYPO3 ist Open Source, basiert auf PHP und existiert seit über 20 Jahren. Es ermöglicht Entwicklern, nahezu jeden Teil des Systems individuell anzupassen. Es ist bekannt für:
- Super Flexibilität (man kann damit so gut wie alles bauen)
- Ideal für große, mehrsprachige Websites
- Unterstützt durch eine starke Community und regelmäßige Long-Term-Support-(LTS)-Versionen
Kurz gesagt, TYPO3 ist eine hervorragende Wahl, wenn du ein CMS brauchst, das mehr kann als nur einen einfachen Blog zu betreiben.
Neugierig geworden? Schau dir unseren vollständigen TYPO3 Blog an!
Warum TYPO3 mit Docker verwenden?
Die Einrichtung von TYPO3 kann zeitaufwendig sein – vor allem, wenn viele Tools, Abhängigkeiten und Konfigurationen im Spiel sind. Docker vereinfacht diesen Prozess, indem es alles, was TYPO3 braucht – wie die PHP-Umgebung, den Webserver und die Datenbank – in portable Container verpackt, die auf jedem Rechner gleich funktionieren.
Vorteile der Verwendung von TYPO3 mit Docker:
- Konstante Umgebungen: TYPO3 in Docker sorgt dafür, dass deine Umgebung auf jedem Rechner gleich läuft – keine "bei mir funktioniert’s“-Probleme mehr.
- Schnelle Einrichtung: Starte in wenigen Minuten eine voll funktionsfähige TYPO3-Umgebung – ganz ohne manuelle Konfiguration.
- Einfache Zusammenarbeit: Teile dein Docker-Setup mit Teamkollegen – ideal für schnelles Onboarding und reibungslose Zusammenarbeit.
- Vereinfachte Bereitstellung: TYPO3-Websites lassen sich mühelos in verschiedenen Umgebungen (Development, Staging, Produktion) deployen.
- Integration mit CI/CD: Nutze Docker in deinen Continuous-Integration- und Deployment-Pipelines für automatisierte Tests und Deployments.
Container vs. Virtuelle Maschinen
Funktion | Virtuelle Maschinen (VMs) | Container |
Architektur | Umfasst das gesamte Betriebssystem, den Hypervisor und die Anwendung | Teilt den Kernel des Host-Betriebssystems, isoliert auf Prozessebene |
Bootzeit | Geringfügig (langsamer, da das gesamte Betriebssystem gebootet wird) | Sekunden (leichtgewichtiges und schnelles Starten) |
Ressourcennutzung | Stark (jede VM umfasst das gesamte Betriebssystem) | Leichtgewichtig (teilt den Kernel des Betriebssystems, weniger Overhead) |
Isolierung | Stark (Isolierung auf Hardware-Ebene über den Hypervisor) | Stark (auf Prozessebene, aber teilt den Kernel) |
Portabilität | Mäßig (hängt von der Kompatibilität des Hypervisors ab) | Hoch (kann überall ausgeführt werden, wo Docker unterstützt wird) |
Anwendungsfall | Mehrere Betriebssysteme auf derselben Hardware, Legacy-Anwendungen | Microservices, CI/CD-Pipelines, skalierbare Anwendungsbereitstellung |
Anforderungen für TYPO3 Docker
Um TYPO3 Docker auszuführen, benötigst du hauptsächlich folgende Komponenten:
1. Docker & Docker Compose
- Docker: Installiere Docker, um Container auszuführen.
- Docker Compose: Installiere Docker Compose, um Multi-Container-Setups (wie Webserver und Datenbank) zu verwalten.
2. DDEV (für lokale Entwicklung)
DDEV ist ein Open-Source Tool, das den Prozess der Einrichtung lokaler Entwicklungsumgebungen mit Docker vereinfacht. Es unterstützt TYPO3 und andere CMS Plattformen und bietet einen optimierten Workflow für Entwickler.
- Installationsanleitung:DDEV Installation
3. PHP-Version
- PHP: TYPO3 benötigt PHP 7.4 oder höher. Stelle sicher, dass dein TYPO3 Docker-Image die richtige PHP-Version enthält (üblich sind PHP 7.4 oder 8.x).
4. Webserver (Apache oder Nginx)
- Apache oder Nginx: Ein Webserver zum Ausliefern der TYPO3-Anwendung. Du kannst ein vorkonfiguriertes TYPO3 Docker-Image mit Apache und PHP verwenden oder Nginx mit PHP-FPM konfigurieren.
5. Datenbank (MariaDB oder MySQL)
- MariaDB oder MySQL: TYPO3 verwendet typischerweise MariaDB oder MySQL als Datenbank. Du kannst das offizielle TYPO3 Docker-Image mit MariaDB oder MySQL nutzen.
6. Docker Compose-Datei
- Definiere deine Services (Webserver, Datenbank) in einer docker-compose.yml-Datei.
Hier ein vereinfachtes Beispiel:
version: '3.7'
services:
web:
image: php:7.4-apache
ports:
- "80:80"
volumes:
- ./html:/var/www/html
depends_on:
- db
db:
image: mariadb:10.4
environment:
- MYSQL_ROOT_PASSWORD=typo3password
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
Methoden zur Installation von TYPO3 mit Docker
Hier sind zwei bewährte Möglichkeiten, TYPO3 mit Docker zu betreiben. Egal, ob Sie gerade erst anfangen oder ein fortgeschrittenes, flexibles Setup benötigen.
1. Methode: TYPO3 lokale Entwicklung mit DDEV (Empfohlen)
Schritt-für-Schritt:
1. Neues TYPO3-Projektverzeichnis erstellen
mkdir my-typo3-site && cd my-typo3-site
2. DDEV initialisieren
ddev config --project-type=typo3 --docroot=public --create-docroot
3. Container starten
ddev start
4. TYPO3 via Composer installieren
ddev composer create "typo3/cms-base-distribution:^13"
5. Setup-Assistent ausführen
CLI-Methode:
ddev typo3cms install:setup
ODER: Web-Methode
ddev exec touch public/FIRST_INSTALL
ddev launch
6. Zugriff auf das TYPO3-Backend
ddev launch typo3
Vorteile:
- Super einfach
- Ideal für Einsteiger
- Offiziell von TYPO3 empfohlen
- Automatisches Setup für PHP, MySQL, Apache, Mailhog
2. Methode: Fortgeschrittenes Setup mit WebDevOps TYPO3 Docker Images
Schritt-für-Schritt:
1. Boilerplate-Repository klonen
git clone
https:// github .com /webdevops/ TYPO3-docker-boilerplate. git my-typo3-project
cd my-typo3-project
2. Dev-Umgebungsdatei auswählen und kopieren
cp docker-compose.development.yml docker-compose.yml
3. Stack starten
docker-compose up -d
4. TYPO3 manuell im Container installieren oder Web-Installer nutzen
- Browser öffnen und auf http:// localhost oder den festgelegten Port/Domain zugreifen
- Installationsschritte durchführen
- Datenbank einrichten (z. B. mit adminer.php oder phpMyAdmin-Container)
- https:// your-url. ddev.site: 8037 (für phpMyAdmin-Datenbank)
Vorteile:
- Ideal für produktive Umgebungen oder Teams
- Vollständig anpassbare Dockerfiles
- Basierend auf Standard-WebDevOps/php-apache-dev-Images
TYPO3 Docker Images
1. Martin Helmichs TYPO3 Docker Image
- Repository:martin-helmich/docker-typo3
- GitHub: martin-helmich/docker-typo3
- Verfügbare Tags: Unterstützt TYPO3-Versionen 6.2 bis 12.4, einschließlich LTS-Versionen wie 9.5, 10.4, 11.5 und 12.4.
- Basis-Image: Basiert auf php:7.4-apache mit den notwendigen PHP-Erweiterungen.
- Anwendungsfall: Ideal für schnelle lokale Entwicklungsumgebungen.
- Hinweis: Nicht für produktive Umgebungen empfohlen.
2. Crinis TYPO3 Docker Images
- Repository:crinis/typo3-docker
- Verfügbare Tags: Unterstützt aktuelle TYPO3 LTS-Versionen.
- Projektstruktur: Geht von einer Composer-basierten Projektstruktur aus, typischerweise erstellt mit
composer create-project typo3/cms-base-distribution. - Anwendungsfall: Geeignet für Entwicklungs- und Produktionsumgebungen mit anpassbaren Konfigurationen.
3. WebDevOps TYPO3 Docker Boilerplate
- Repository:webdevops/TYPO3-docker-boilerplate
- Funktionen: Bietet ein umfassendes Docker-Setup inklusive Services wie Apache, PHP-FPM, MySQL, Solr, Elasticsearch, Redis und mehr.
- Anwendungsfall: Ideal für komplexe Entwicklungsumgebungen und skalierbare Produktiv-Deployments.
4. fnagel/docker-typo3
- Repository:fnagel/docker-typo3
- Funktionen: Ein einfaches und minimales TYPO3-Docker-Setup basierend auf PHP und Apache.
- Anwendungsfall: Ideal für Entwickler, die eine einfache und saubere Docker-Umgebung für TYPO3 suchen.
5. Raimund Rittnauers TYPO3 Docker Setup
- Repository:raaaimund/typo3-docker
- Funktionen: Bietet ein Docker-Setup für TYPO3 mit NGINX, PHP-FPM und MySQL, inklusive optionalem Import eines SQL-Dumps.
- Anwendungsfall: Geeignet für Entwickler, die eine angepasste Docker-Umgebung für TYPO3 wünschen.
6. Kronova TYPO3 Docker
- Repository:kronova/typo3-docker
- Funktionen: Bietet ein skalierbares Docker-Setup für TYPO3, das mehrere LTS-Versionen unterstützt.
- Anwendungsfall: Entwickelt für Entwicklungs- und Produktionsumgebungen mit Fokus auf Skalierbarkeit.
Verwaltung von Docker-Volumes und Datenpersistenz
Beim Einsatz von TYPO3 mit Docker ist es wichtig, bestimmte Verzeichnisse persistent zu speichern, damit Inhalte, Konfigurationen und Benutzer-Uploads bei Container-Neustarts oder -Neuerstellungen erhalten bleiben.
Wichtige Verzeichnisse für die Persistenz
Stelle sicher, dass die folgenden TYPO3-Verzeichnisse in einen persistenten Speicher gemappt werden:
- fileadmin/: Vom Benutzer hochgeladene Dateien und Medien
- typo3conf/: Konfigurationsdateien und Erweiterungen
- typo3temp/: Temporäre Dateien und Caches
- uploads/: Über das TYPO3-Backend hochgeladene Dateien
Die Persistenz dieser Verzeichnisse stellt sicher, dass Inhalte und Konfigurationen deiner Website erhalten bleiben.
Docker Compose Volume-Konfiguration
In deiner docker-compose.yml-Datei definierst du Volumes, um diese Verzeichnisse auf deinen Host-Rechner zu mappen:
services:
web:
image: your-typo3-image
volumes:
- ./data/fileadmin:/var/www/html/public/fileadmin
- ./data/typo3conf:/var/www/html/public/typo3conf
- ./data/typo3temp:/var/www/html/public/typo3temp
- ./data/uploads:/var/www/html/public/uploads
Dieses Setup stellt sicher, dass Änderungen im Container auch auf dem Host sichtbar sind – und umgekehrt.
TYPO3 Docker Tipps & Best Practices
- Verwende .env-Dateien für sensible Daten und zur Wiederverwendung in mehreren Projekten.
Setze TYPO3_CONTEXT, um zwischen Entwicklungs-, Staging- und Produktivumgebungen zu unterscheiden:
environment:
- TYPO3_CONTEXT=DevelopmentAktiviere Xdebug mit DDEV für das Debugging:
ddev xdebug on
- TYPO3 nutzt OPcache intensiv – stelle sicher, dass dieser in der php.ini korrekt konfiguriert ist.
- Verwende beim Composer-Installationsbefehl immer eine feste Version (z. B. ^13.1, nicht dev-master).
Fehlerbehebung bei häufigen Problemen
Problem | Lösung |
Weißer Bildschirm nach der Installation | Überprüfen Sie die Datei-/Ordnerberechtigungen (verwenden Sie ddev ssh zur Überprüfung) |
"Keine Datenbankverbindung“ | Stellen Sie sicher, dass Ihr DB-Container läuft und die Anmeldedaten übereinstimmen |
TYPO3 nicht über URL erreichbar | Überprüfen Sie die Portzuordnungen in der Datei docker-compose.yml oder den DDEV-Router |
TYPO3 beschwert sich über Bildverarbeitung | Stellen Sie sicher, dass die PHP-Erweiterungen gd oder imagick aktiviert sind |
Ein bestehendes TYPO3-Projekt dockerisieren
Für Nutzer, die bereits ein TYPO3-Projekt lokal oder auf einem Server betreiben:
- Füge eine composer.json hinzu, falls sie fehlt (mit composer init erstellen)
- Kopiere die public/-Struktur, wenn du ein älteres TYPO3-Setup verwendest
Verwende DDEV-Befehle zum Importieren:
ddev import-db --src=backup.sql.gz
ddev import-files --src=uploads/
Fazit
Die TYPO3-Docker-Reise muss nicht kompliziert sein. Mit den oben beschriebenen einfachen Schritten bist du bereits auf dem Weg zu einer einfacheren und effizienteren Entwicklungsumgebung.
Denke daran: Egal, ob du gerade erst anfängst oder dein Setup optimieren möchtest – es gibt immer Raum für Verbesserungen. TYPO3 Docker bietet dir die Flexibilität, dein Projekt mit deinen Anforderungen wachsen zu lassen und anzupassen.
Wenn du Fragen hast oder Hilfe benötigst, hinterlasse gerne einen Kommentar – wir unterstützen dich gerne!
FAQs
Ja, aber es wird nur empfohlen, wenn du bereits Erfahrung mit Docker hast. Für produktive Umgebungen solltest du optimierte Images, sichere Konfigurationen und eine saubere Verwaltung von Volumes und Daten nutzen. Tools wie Kubernetes oder Docker Swarm eignen sich für skalierbare Deployments.
Nein. DDEV ist zwar der einfachste und einsteigerfreundlichste Weg, aber du kannst auch eigene Docker-Compose-Setups oder TYPO3-Images von WebDevOps nutzen, um mehr Kontrolle und Flexibilität zu haben.
Grundkenntnisse in Docker und Docker Compose sind hilfreich, aber Tools wie DDEV übernehmen viele Aufgaben automatisch – ideal für alle, die neu im Umgang mit Containern sind.
Ja! Du musst nur eine Docker-Umgebung (z. B. mit DDEV) einrichten, deine Datenbank und Dateien importieren und sicherstellen, dass deine Projektstruktur kompatibel ist (z. B. public/-Verzeichnis, composer.json).
In den meisten Fällen ja. TYPO3-Extensions funktionieren in Docker genauso wie in einer lokalen oder Server-Umgebung – vorausgesetzt, alle PHP- und Systemabhängigkeiten sind richtig eingerichtet.
Verwende Composer, um deine TYPO3-Version zu aktualisieren (composer update), und leere anschließend den Cache. Mit DDEV kannst du Updates sicher in isolierten Umgebungen testen, bevor sie live geschaltet werden.
Ansprechpartner für Internetagentur und TYPO3 Projekte
Sven Thelemann
Servicepartner - Deutschland

Comments and Responses
Be the First to Comment