Magento 2 Experten — Hyvä Theme, Tailwind CSS & SEO aus einer Hand ›

Deployment-Grundlagen

Deployment-Grundlagen

~17 Min. Lesezeit Zuletzt aktualisiert am 8. August 2026

Zeit, aufgaben-manager tatsächlich auf einen Produktionsserver zu bringen – eine SYSTEMATISCHE Checkliste, die jeden Schritt aus dieser Schulung zu einem funktionierenden Ganzen zusammenführt.

1. Abhängigkeiten für Produktion installieren

composer install --no-dev --optimize-autoloader

--no-dev überspringt require-dev-Pakete (Kapitel 6) – maker-bundle, PHPUnit (Kapitel 42) & Co. werden in Produktion NICHT gebraucht und würden nur unnötig Angriffsfläche und Speicherplatz hinzufügen. --optimize-autoloader baut eine performanteren, klassen-indizierten Autoloader statt der langsameren Standard-Variante.

2. Umgebungsvariablen für Produktion setzen

.env.local
APP_ENV=prod
APP_SECRET=EIN_ECHTER_ZUFAELLIGER_WERT_NIEMALS_AUS_ENTWICKLUNG_UEBERNEHMEN
DATABASE_URL="postgresql://produktions_nutzer:sicheres_passwort@produktions-db-host:5432/aufgaben_manager?serverVersion=16&charset=utf8"
MAILER_DSN=smtp://echter-anbieter.de:587

Achtung: GENAU wie in Kapitel 4 gelernt: .env.local wird NIEMALS versioniert. Der APP_SECRET MUSS für Produktion NEU generiert werden (NIEMALS den aus der lokalen Entwicklung wiederverwenden) – er wird u. a. für CSRF-Token-Generierung (Kapitel 18) und Signaturen verwendet.

3. Cache vorab aufwärmen

php bin/console cache:clear --env=prod
php bin/console cache:warmup --env=prod

GENAU der in Kapitel 4 erklärte Produktions-Cache – wird er NICHT vorab aufgewärmt, trägt der ERSTE Nutzer nach jedem Deployment die Kosten des Cache-Aufbaus (spürbar langsame erste Anfrage).

4. Datenbank-Migrationen ausführen

php bin/console doctrine:migrations:migrate --env=prod --no-interaction

Achtung: --no-interaction aus Kapitel 40 ist HIER ZWINGEND für automatisierte Deployments. Prüfen Sie VOR jedem Produktions-Deployment, ob die neuen Migrationen TATSÄCHLICH mit den bereits in Produktion vorhandenen Daten kompatibel sind – eine Spalte, die in der Entwicklungsdatenbank leer war, kann in Produktion echte Werte enthalten, die eine Migration NICHT beschädigen darf.

5. Statische Assets kompilieren

php bin/console asset-map:compile

Baut die in Kapitel 14 mit asset() referenzierten Dateien für Produktion, INKLUSIVE Cache-Busting-Hashes im Dateinamen – ändert sich app.css, erhält die neue Version einen NEUEN Dateinamen, sodass Browser NICHT versehentlich die alte, gecachte Version weiter nutzen.

Die vollständige Checkliste im Überblick

  1. composer install --no-dev --optimize-autoloader
  2. Umgebungsvariablen prüfen (APP_ENV=prod, echter APP_SECRET, echte DATABASE_URL)
  3. php bin/console cache:clear --env=prod && cache:warmup --env=prod
  4. php bin/console doctrine:migrations:migrate --env=prod --no-interaction
  5. php bin/console asset-map:compile
  6. Dateiberechtigungen für var/cache und var/log prüfen (Webserver-Nutzer braucht Schreibzugriff)
  7. HTTPS-Zertifikat und Sicherheits-Header prüfen

Ein letzter Check: bin/console about

php bin/console about --env=prod

Tipp: Zeigt die AKTIVE Umgebung, PHP-Version und installierte Bundles – ein schneller, letzter Blick, um zu bestätigen, dass die Anwendung TATSÄCHLICH in der prod-Umgebung läuft und nicht versehentlich noch dev-Konfiguration verwendet (was Debug-Informationen für JEDEN Besucher sichtbar machen würde – ein ernsthaftes Sicherheitsrisiko).

Damit ist Block 8 – und diese GESAMTE Schulung – FAST vollständig! Ein abschließendes Kapitel bündelt alles Gelernte und rundet aufgaben-manager ab.