# Shopware — Die bin/console-Kommandozeile von Shopware 6

> Praxis-Guide zur Shopware-6-Kommandozeile (bin/console): Plugins, Themes, Cache, Indizierung, Benutzer, Verkaufskanäle und Systemkonfiguration verwalten.

Source: https://www.jpkc.com/db/cheatsheets/build-languages/shopware/

<!-- PROSE:intro -->
Shopware 6 ist ein Symfony-basiertes Open-Source-Shopsystem, das du fast vollständig über die Kommandozeile `bin/console` steuern kannst. Vom Cache-Leeren über Plugin- und Theme-Verwaltung bis zu Indizierung, Migrationen und Wartungsarbeiten läuft der Betrieb deines Shops über genau diese Befehle. Dieser Guide bündelt die wichtigsten `bin/console`-Kommandos für Pflege, Deployment und Fehlersuche – von der täglichen Routine bis zum Systemupdate.
<!-- PROSE:intro:end -->

## Allgemein & Infos

`bin/console list` — Listet alle verfügbaren Kommandos auf.

```bash
bin/console list
```

`bin/console about` — Zeigt Versionsinfos zu Shopware und Symfony an.

```bash
bin/console about
```

`bin/console system:info` — Zeigt Systeminformationen und prüft die Systemvoraussetzungen.

```bash
bin/console system:info
```

`bin/console system:config:get <key>` — Liest einen Wert aus der Systemkonfiguration aus.

```bash
bin/console system:config:get core.basicInformation.shopName
```

`bin/console system:config:set <key> <value>` — Setzt einen Wert in der Systemkonfiguration.

```bash
bin/console system:config:set core.basicInformation.shopName 'My Shop'
```

## Cache & Build

`bin/console cache:clear` — Leert den Anwendungs-Cache.

```bash
bin/console cache:clear
```

`bin/console cache:warmup` — Wärmt den Cache vor.

```bash
bin/console cache:warmup
```

`bin/console http:cache:warm:up` — Wärmt den HTTP-Cache (Reverse-Proxy) vor.

```bash
bin/console http:cache:warm:up
```

`bin/console theme:compile` — Kompiliert die Theme-Assets (CSS, JS).

```bash
bin/console theme:compile
```

`bin/console theme:refresh` — Aktualisiert die Theme-Konfiguration.

```bash
bin/console theme:refresh
```

`bin/console theme:dump` — Gibt die Theme-Konfiguration zum Debuggen aus.

```bash
bin/console theme:dump
```

`bin/console assets:install` — Installiert Bundle- und Plugin-Assets ins öffentliche Verzeichnis.

```bash
bin/console assets:install
```

## Plugin-Verwaltung

`bin/console plugin:list` — Listet alle Plugins und ihren Status auf.

```bash
bin/console plugin:list
```

`bin/console plugin:install <name>` — Installiert ein Plugin.

```bash
bin/console plugin:install MyPlugin
```

`bin/console plugin:install --activate <name>` — Installiert und aktiviert ein Plugin in einem Schritt.

```bash
bin/console plugin:install --activate MyPlugin
```

`bin/console plugin:activate <name>` — Aktiviert ein installiertes Plugin.

```bash
bin/console plugin:activate MyPlugin
```

`bin/console plugin:deactivate <name>` — Deaktiviert ein Plugin.

```bash
bin/console plugin:deactivate MyPlugin
```

`bin/console plugin:update <name>` — Aktualisiert ein Plugin.

```bash
bin/console plugin:update MyPlugin
```

`bin/console plugin:uninstall <name>` — Deinstalliert ein Plugin.

```bash
bin/console plugin:uninstall MyPlugin
```

`bin/console plugin:refresh` — Aktualisiert die Plugin-Liste (erkennt neue Plugins).

```bash
bin/console plugin:refresh
```

## Indizierung & Daten

`bin/console dal:refresh:index` — Baut den Index des Data Abstraction Layer neu auf.

```bash
bin/console dal:refresh:index
```

`bin/console es:index` — Indiziert Elasticsearch / OpenSearch neu.

```bash
bin/console es:index
```

`bin/console es:reset` — Setzt die Elasticsearch-Indizes zurück und legt sie neu an.

```bash
bin/console es:reset
```

`bin/console es:status` — Zeigt den Status des Elasticsearch-Index an.

```bash
bin/console es:status
```

`bin/console product:index` — Indiziert Produkte neu (Varianten-Listing, günstigster Preis usw.).

```bash
bin/console product:index
```

`bin/console media:generate-thumbnails` — Erzeugt Thumbnails für alle Mediendateien.

```bash
bin/console media:generate-thumbnails
```

`bin/console media:delete-unused` — Löscht Mediendateien, die nirgends referenziert sind.

```bash
bin/console media:delete-unused
```

## Benutzer & Verkaufskanäle

`bin/console user:create <username>` — Legt einen neuen Admin-Benutzer an.

```bash
bin/console user:create admin --admin --email=admin@example.com --password=secret
```

`bin/console user:change-password <username>` — Ändert das Passwort eines Admin-Benutzers.

```bash
bin/console user:change-password admin
```

`bin/console user:list` — Listet alle Admin-Benutzer auf.

```bash
bin/console user:list
```

`bin/console sales-channel:list` — Listet alle Verkaufskanäle auf.

```bash
bin/console sales-channel:list
```

`bin/console sales-channel:create:storefront` — Legt einen neuen Storefront-Verkaufskanal an.

```bash
bin/console sales-channel:create:storefront --name='My Store' --url='https://myshop.com'
```

`bin/console sales-channel:maintenance:toggle <id>` — Schaltet den Wartungsmodus eines Verkaufskanals um.

```bash
bin/console sales-channel:maintenance:toggle <sales-channel-id>
```

## Queue & geplante Tasks

`bin/console messenger:consume async` — Verarbeitet Nachrichten aus der Async-Queue.

```bash
bin/console messenger:consume async --time-limit=60
```

`bin/console messenger:consume async --limit=<n>` — Verarbeitet eine begrenzte Anzahl an Nachrichten.

```bash
bin/console messenger:consume async --limit=50
```

`bin/console messenger:failed:show` — Zeigt fehlgeschlagene Nachrichten an.

```bash
bin/console messenger:failed:show
```

`bin/console messenger:failed:retry` — Wiederholt alle fehlgeschlagenen Nachrichten.

```bash
bin/console messenger:failed:retry
```

`bin/console scheduled-task:run` — Führt alle fälligen geplanten Tasks aus.

```bash
bin/console scheduled-task:run
```

`bin/console scheduled-task:list` — Listet alle registrierten geplanten Tasks und ihren Status auf.

```bash
bin/console scheduled-task:list
```

## Setup & Wartung

`bin/console system:setup` — Interaktives System-Setup (Datenbank, URL usw.).

```bash
bin/console system:setup
```

`bin/console system:install` — Installiert Shopware (legt das Datenbankschema an, importiert Basisdaten).

```bash
bin/console system:install --basic-setup
```

`bin/console system:update:prepare` — Bereitet das System auf ein Update vor (aktiviert den Wartungsmodus).

```bash
bin/console system:update:prepare
```

`bin/console system:update:finish` — Schließt den Update-Vorgang ab (deaktiviert den Wartungsmodus).

```bash
bin/console system:update:finish
```

`bin/console database:migrate --all` — Führt alle ausstehenden Datenbankmigrationen aus.

```bash
bin/console database:migrate --all
```

`bin/console database:migrate-destructive --all` — Führt destruktive Migrationen aus (Spalten löschen usw.).

```bash
bin/console database:migrate-destructive --all
```

`bin/console sitemap:generate` — Erzeugt XML-Sitemaps für alle Verkaufskanäle.

```bash
bin/console sitemap:generate
```

`bin/console debug:router` — Listet alle registrierten Routen auf.

```bash
bin/console debug:router
```

<!-- PROSE:outro -->
## Fazit

Mit `bin/console` hast du den gesamten Lebenszyklus eines Shopware-6-Shops in der Hand: Cache und Themes neu aufbauen, Plugins verwalten, Indizes pflegen und Updates fahren. Für den Alltag bilden `cache:clear`, `theme:compile` und `dal:refresh:index` das Rückgrat – sie laufen nach fast jeder Konfigurations- oder Code-Änderung.

Bei allem, was die Datenbank oder das System verändert, gilt Vorsicht: `database:migrate`, `database:migrate-destructive` und `system:update:*` solltest du nur mit einem frischen Backup ausführen, denn destruktive Migrationen löschen Spalten unwiderruflich. Aktiviere vor Migrationen über `system:update:prepare` oder den Verkaufskanal-Wartungsmodus den Wartungszustand, damit dir keine Kunden in eine halb migrierte Datenbank laufen. `system:setup` schreibt deine `.env` und überschreibt vorhandene Zugangsdaten – prüfe vorher, was bereits konfiguriert ist.

## Weiterführende Links

- [Shopware Developer Documentation](https://developer.shopware.com/) – offizielle Entwickler-Doku mit CLI- und Konsolen-Referenz (englisch)
- [shopware.com](https://www.shopware.com/de/) – Herstellerseite mit Produkt- und Editionsinfos (deutsch)
<!-- PROSE:outro:end -->

## Verwandte Kommandos

- [artisan](https://www.jpkc.com/db/cheatsheets/build-languages/artisan/) – die Kommandozeile von Laravel (php artisan)
- [cargo](https://www.jpkc.com/db/cheatsheets/build-languages/cargo/) – Paketmanager und Build-Tool von Rust
- [composer](https://www.jpkc.com/db/cheatsheets/build-languages/composer/) – Abhängigkeitsmanager für PHP-Projekte

