Wähle einen Artikel
Shopware via Docker auf VPS installieren
Shopware via Docker auf VPS installieren

Volle Kontrolle mit deinem eigenen VPS von easyname

Mit einem VPS von easyname hast du volle Kontrolle über deinen Server – flexibel, skalierbar und umweltbewusst betrieben in ISO-zertifizierten Rechenzentren in Österreich. Ideal für deine Anwendungen, Projekte und maximale Performance.

0. Überblick

  • Verwendetes System: Debian 11 64 bit
  • Genutzter User: Ich nehme alles als „root“ vor
  • Zeitdauer: ca. 10 Minuten
  • Schwierigkeit: Einfach. Nur Code kopieren ?
  • Besonderheiten:

1. Shopware installieren

1.1 Einleitung

Shopware (https://www.shopware.com) ist ein modulares Online-Shopsystem. Es gibt sowohl eine kostenlose (open Source Version) sowie kostenpflichtige Versionen. Auf der Herstellerhomepage kannst du dich über die verschiedenen Versionen informieren (https://www.shopware.com/de/preise/).

1.2 Infos zu yml Dateien

Bei yml Dateien ist es sehr wichtig, dass die Zeilen alle richtig eingerückt sind. Die Zeilen MÜSSEN immer mit der Leertaste eingerückt werden. Es dürfen KEINE Tabs enthalten sein. Du kannst den nachfolgenden Code immer online „überprüfen“ lassen. Die meisten Fehler entstehen nämlich durch die falsche Formatierung. Ein Dienst zum Überprüfen ist zum Beispiel: https://codebeautify.org/yaml-validator

1.3 Vorbereitung

Diese Anleitung basiert auf dem aktuellen Debian 10 Betriebssystem. Shopware werden wir unter Docker realisieren. Dies ermöglicht uns später sehr schnelle Updates und eine schnelle Installation.

Um Shopware neben anderen Diensten auf unserem Server betreiben zu können, nutzen wir hier den Reverse Proxy Traefik.

1.3.1 Verzeichnis erstellen

Wir erstellen uns ein neues Verzeichnis, in welchem wir später alle Daten von Shopware abspeichen. Dazu geben wir folgendes in der Konsole ein:

mkdir -p
/opt/containers/shopware/{database,plugins,log,theme,media,bundles,sitemap,thumbnail,jwt,files,state}

Du kannst hier auch ein anderes Verzeichnis verwenden. Musst dann aber die gesamte Anleitung entsprechend anpassen.

1.3.2 docker-compose.yml erstellen

Nun können wir mit der eigentlichen „Installation“ von Shopware beginnen. Dazu öffnest du folgende Datei:

nano /opt/containers/shopware/docker-compose.yml

Nun kopierst du folgenden Code in die Datei. Dieser Code ist unser Bauplan für unseren Shopware Container.

version: "3.8"

services:

  mysql:

    image: mysql:5.7

    container_name: shopware-sql

    restart: unless-stopped

    environment:

      MYSQL_ROOT_PASSWORD: root

      MYSQL_DATABASE: shopware

      MYSQL_USER: shopware

      MYSQL_PASSWORD: shopware

    volumes:

       - ./database:/var/lib/mysql

    networks:

       - default

  shopware:

    image: shyim/shopware:latest

    container_name: shopware

    restart: unless-stopped

    environment:

      APP_SECRET:

      INSTANCE_ID:

      APP_URL: https://shop.euredomain.de

      DATABASE_HOST: mysql

      DATABASE_URL: mysql://shopware:shopware@mysql:3306/shopware

    volumes:

      - ./plugins:/var/www/html/custom/plugins

      - ./files:/var/www/html/files

      - ./log:/var/www/html/var/log

      - ./theme:/var/www/html/public/theme

      - ./media:/var/www/html/public/media

      - ./bundles:/var/www/html/public/bundles

      - ./sitemap:/var/www/html/public/sitemap

      - ./thumbnail:/var/www/html/public/thumbnail

      - ./state:/state

      - ./jwt:/var/www/html/config/jwt

    labels:

      - "traefik.enable=true"

      - "traefik.http.routers.shopware.entrypoints=http"

      - "traefik.http.routers.shopware.rule=Host(`shop.euredomain.de`)"

      - "traefik.http.middlewares.shopware-https-redirect.redirectscheme.scheme=https"

      - "traefik.http.routers.shopware.middlewares=shopware-https-redirect"

      - "traefik.http.routers.shopware-secure.entrypoints=https"

      - "traefik.http.routers.shopware-secure.rule=Host(`shop.euredomain.de`)"

      - "traefik.http.routers.shopware-secure.tls=true"

      - "traefik.http.routers.shopware-secure.tls.certresolver=http"

      - "traefik.http.routers.shopware-secure.service=shopware"

      - "traefik.http.services.shopware.loadbalancer.server.port=80"

      - "traefik.docker.network=proxy"

      - "traefik.http.routers.shopware-secure.middlewares=secHeaders@file"

    networks:

      - proxy

      - default

networks:

  proxy:

    external: true

Nun müssen wir noch einiges anpassen.

1.3.3 Hostname anpassen

Nun musst du noch den Hostnamen anpassen, über welchen später Shopware erreichbar sein soll.

Diese beiden Zeilen musst du anpassen.

    - "traefik.http.routers.shopware.rule=Host(`shop.euredomain.de `)"
    - "traefik.http.routers.shopware-secure.rule=Host(`shop.euredomain.de`)"

In meinem Fall also:

    - "traefik.http.routers.shopware.rule=Host(`shop.testbereich.net`)"
    - "traefik.http.routers.shopware-secure.rule=Host(`shop.testbereich.net`)"

Wenn du Shopware direkt auf deiner „Hauptdomain“ betreiben willst, dann änderst du es folgendermaßen ab:

"traefik.http.routers.shopware.rule=Host(`www.euredomain.de`,`euredomain.de`)"
"traefik.http.routers.shopware-secure.rule=Host(`www.euredomain.de`,`euredomain.de`)"

Anschließend müssen wir noch die APP_URL ändern. Gib dort die Domain ein, welche du auch bei Traefik eingeben hast. Bei mir sieht es dann so aus:

vorher:

      APP_URL: https://shop.euredomain.de

nachher:

      APP_URL: https://shop.testbereich.net

1.3.4 Datenbank Passwort anpassen

Nachdem du den Hostnamen angepasst hast, musst du noch das Datenbank Passwort anpassen. Vergebe ein langes, sicheres Kennwort.

vorher:

MYSQL_ROOT_PASSWORD: root MYSQL_PASSWORD: shopware DATABASE_URL: mysql://shopware:shopware@mysql:3306/shopware 

nachher:

MYSQL_ROOT_PASSWORD: fjuZA341fnuRahs23
MYSQL_PASSWORD: fjgh57Anfj5238Ar DATABASE_URL: mysql://shopware:fjgh57Anfj5238Ar@mysql:3306/shopware

1.3.5 IDs generieren

Nun musst du noch ein „APP_SECRET“ und eine „INSTANCE_ID“ generieren. Dazu gibst du folgenden Befehl 2x ein:

openssl rand -hex 32

Du solltest dann in etwa solche Ausgaben sehen:

Terminalfenster mit schwarzem Hintergrund, grüner Cursor; openssl rand -hex 32 und lange Hex-Zeichenfolgen; root@testbereich:/opt/containers/shop#

Nun öffnen wir wieder unsere docker-compose Datei und fügen diese Werte dort ein.

nano /opt/containers/shopware/docker-compose.yml

Hier passt du nun folgende beide Werte an:

vorher:

      APP_SECRET:
      INSTANCE_ID:

nachher:

      APP_SECRET: d3309782c2f7841b99eff858cb337817c0e1ebb5c7965d3ff90444e2b8f132af INSTANCE_ID: 1840d8105df98e304fd7eab1f831cf8141352c3c56f9ce42bfd612d0f8fcb884

Nun sind wir fertig mit der Vorbereitung.

2. Shopware starten

Gib nun folgendes ein, um deinen Shopware Container zu starten:

docker compose -f /opt/containers/shopware/docker-compose.yml up -d 

Beim ersten Start des Containers wird Shopware initialisiert. Dies bedeutet, dass die Datenbank eingerichtet,deine Einstellungen übernommen werden und vieles mehr. Daher dauert es einige Minuten, bis der Container dann über die Webseite erreichbar ist. Bei mir hat es ca. 3 Minuten gedauert.

Gehe nun mit deinem Webbrowser auf deine Webseite (z.B. shop.euredomain.de). Dies sollte so aussehen.

DemoStore-Webseite mit Logo, Suchleiste, Menü- und Nutzer-Icons; Filter; Text 'No products found'; Cookie-Banner.

Shopware scheint schon mal zu funktionieren. Nun gehen wir in die Administrationsansicht. Dazu gibst du folgendes ein: https://shop.euredomain.de/admin

Dann solltest du folgendes sehen:

Linke Bildhälfte: Hängebrücke über Wasser bei Sonnenuntergang; weißer Text Hallo! Willkommen zurück. Rechts Login-Formular.

Nun kannst du dich mit folgenden Daten einloggen:

  • Nutzername: admin
  • Passwort: shopware

Nach dem Login wirst du einige Sachen gefragt. Im ersten Schritt kannst du ein Sprachpaket installieren. Dazu klickst du auf „Install“.

Willkommensbildschirm der Shopware 6 Administration; Illustration von drei Personen und blauem Install-Button.

Dies dauert nun einige Minuten. Anschließend sollte es so aussehen:

Sprachauswahl-Dialog: Dropdown 'English (United Kingdom)'; Passwortfeld mit Augen-Symbol; Buttons Cancel, Change language.

Wir stellen die Sprache nun auf „German“ um und geben wieder das Kennwort „shopware“ ein.

Modalfenster mit Sprachauswahl, Dropdown 'German (Germany)', Passwortfeld und zwei Buttons.

Anschließend sind wir fertig mit der Sprachkonfiguration.

Willkommensbildschirm der Shopware 6 Administration mit Illustration von drei Personen und Weiter-Button unten rechts.

Nun können wir „weiter“ klicken. Im nächsten Schritt werden wir gefragt, ob wir Demo Daten installieren wollen oder einen eigenen Shop migrieren. Hier wähle ich „Demodaten installieren“.

Screenshot eines Setup-Bildschirms mit zwei Optionen: Demodaten verwenden und Shop migrieren; darunter zwei blaue Buttons.

Nach kurzer Zeit erscheint dann dieser Text.

Shopware 6 Setup: Zwei Karten 'Demodaten nutzen' und 'Eigenen Shop migrieren', Weiter-Button unten rechts.

Bei der nächsten Auswahl kannst du einfach auf „Weiter“ klicken, da wir noch keine Verkaufskanäle angelegt haben.

Software-Einstellungsseite: linke Navigation, Titel 'Standardwerte definieren', Dropdown 'Verkaufskanal', Aktiv.

Nun können wir unseren E-Mail Server festlegen. Wenn du dieser Anleitung gefolgt bist, dann hast du keinen E-Mail Server installiert. Dies bedeutet, dass du auf „Eigenen SMTP-Server konfigurieren“ klicken musst.

UI der E-Mail-Einstellungen mit zwei Optionen: 'Lokalem E-Mail-Agenten verwenden' und 'Eigenen SMTP-Server konfigurieren' (ausgewählt).

Im Anschluss siehst du dann folgende Einstellungen:

Mailer-Einstellungen: linke Spalte, rechts SMTP-Server-Formular mit Host, Port, Benutzername, Passwort, Absender-Adresse.

Du kannst diese Einstellungen auch mit „später einstellen“ überspringen.


Im Anschluss daran hast du dann die Möglichkeit PayPal einzubinden. Auch dies kannst du überspringen.

PayPal-Setup: linke Navigationsleiste, PayPal-Logo in der Mitte, Knöpfe 'Zurück' und 'Konfigurieren'.

Nun bekommst du noch die Information, dass du auch „Shopware Markets“ einbinden kannst Hier kannst du einfach „weiter“ klicken.

Screenshot einer Onboarding-Oberfläche: Shopware Markets, Amazon- und eBay-Logos, Text und Navigationsknöpfe.

Nun bekommst du noch Erweiterungen vorgeschlagen.

Einrichtungsfenster: linke Leiste mit Haken, Hauptbereich Unsere Empfehlungen, Länder-Chips, unten Zurück und blauer Weiter.

Du kannst dir hier eine Region und Anwendungsbereich auswählen und die Erweiterungen mit einem Klick installieren. Dies kannst du aber später jederzeit auch noch tun.

Screenshot einer Extensions-Seite mit Empfehlungen, Filterchips, Installieren-Buttons sowie Klarna- und Mollie-Logos.

Im nächsten Schritt kannst du dich mit deinem Shopware Account verbinden. Diesen benötigst du beispielsweise um später Themes oder Erweiterungen aus dem Store zu downloaden. Wenn du noch keinen hast, dann kannst du hier einen Account anlegen oder „überspringen“ klicken.

Anmeldebildschirm: linke Seitenleiste mit Schritten, Person am Laptop, rechte Formularfelder.

Nun kannst du noch den Shopware Store aktivieren.

Shopware Store Setup: linke Spalte mit grünen Häkchen, zentrale Grafik eines runden Geräts.

Anschließend bist du fertig mit der Konfiguration.

Installationsdialog: linke Spalte mit grünen Haken; Herzlichen Glückwunsch! Dein Shopware ist jetzt vorbereitet.

Nun siehst du das Shopware Dashboard.

Admin-Dashboard: links Menüleiste, obere Suchleiste, Begrüßung 'Hallo.' und zwei Informationskarten mit Statistiken.

3. Benutzername / Passwort ändern

Nun zeige ich dir, wie du den Benutzernamen und das Passwort ändern kannst. Dazu klickst du im Menü auf „Einstellungen.“

Blauer Admin-Bereich mit seitlicher Menüleiste, Logo oben links, Version v6.4.5.1, grüner Statuspunkt; Einstellungen

Wähle nun „System“ aus.

Zweispaltige UI: linke dunkle Navigation mit Symbolen; rechte helle Fläche zeigt Shop und System, System markiert.

Wähle anschließend „Benutzer & Rechte“ aus.

Einstellungsseite mit linkem Menü 'Shop System Erweiterungen' und hervorgehobenem 'Benutzer & Rechte'.

Hier siehst du nun eine Übersicht aller Benutzer. Standardmäßig gibt es nur den Benutzer „admin“.

Benutzerliste in Admin-Oberfläche; Zeile mit Avatar A, Benutzername admin, Rolle Administrator, E-Mail info@shopware...

Klicke nun auf die 3 Punkte hinter dem Benutzer und wähle dann „Bearbeiten“ aus.

Benutzertabelle mit Spalten: Benutzername, Vorname, Rollen, E-Mail; Zeile: A, admin, Administrator, info@shopware.com; Rechts Menü.

Jetzt siehst du die Account Informationen. Hier kannst du nun Namen, Passwort, E-Mail Adresse sowie viele weiter Sachen einstellen.

Admin-Formular mit Feldern: Vorname, Nachname, E-Mail, Benutzername, Passwort; Profilbild-Upload; Sprache, Zeitzone, Job-Titel

4. Erweiterungen und Themes installieren

Für Shopware gibt es eine Menge an kostenlosen Erweiterungen und Themes. Diese kannst du einfach über den Shop beziehen. Klicke dazu auf „Erweiterungen“.

Seitliche Admin-Navigationsleiste mit Logo und mehreren Menüeinträgen, roter Rahmen um Erweiterungen.

Anschließend klickst du auf „Store“.

Linkes Navigationsmenü mit Einträgen 'Erweiterungen' und 'Einstellungen'; rechts Dropdown mit 'Store' hervorgehoben.

Hier gibt es nun die beiden Reiter „Apps“ und „Themes“. Du kannst hier die Auswahl nach einigen Kriterien wie Bewertung, Bezahlmodell, verändern.

Screenshot eines App-Store-Interfaces mit Kartenvorschauen, oben links App-Tab, Filter-Pills und grüner Karte mit moori.
Screenshot einer Theme-Auswahl-Seite: Oben Tabs Apps und Themes, darunter Filter-Pills und ein Grid mit Theme-Karten.
Nächster Artikel
Diaspora auf VPS installieren
Weitere passende Themen