Shopware 6 im Webhosting: Redis, OpenSearch & RabbitMQ mit Containern nutzen

Shopware 6 im Webhosting: Redis, OpenSearch & RabbitMQ mit Containern nutzen

Für viele Firmen ist E-Commerce immer wichtiger, und eine Plattform, die sich als besonders beliebt erweist, ist Shopware 6. Wenn Sie eine moderne und effiziente Grundlage für Ihren Online-Shop suchen, kann Shopware 6 die richtige Wahl sein. In diesem Artikel zeigen wir Ihnen, wie Sie Shopware 6 mit wichtigen Microservices wie Redis, OpenSearch und RabbitMQ aufsetzen.

Dabei wollen wir den Use-Case betrachten, dass Sie die Installation in einem bestehenden Webspace einrichten wollen. Zusätzlich zum Webspace benötigen Sie dennoch die entsprechenden Microservices – Redis, OpenSearch und RabbitMQ.

Shopware 6 im Webhosting mit Containern betreiben

Die oben genannten Microservices sind essenziell, wenn es darum geht, Shopware 6 zu betreiben. Redis, OpenSearch und RabbitMQ sorgen dafür, dass Ihre Plattform auch bei hoher Last stabil bleibt und alle Funktionen zuverlässig arbeiten. Unsere vorbereitete Docker-Compose-Datei bietet Ihnen einen schnellen Start. Mit Docker oder Podman können Sie die Dienste problemlos starten. Die jeweils aktuellen Container-Versionen finden Sie auf Docker Hub.

Wenn Sie die Container gestartet haben, können Sie die IP-Adresse Ihres Cloud-Servers in Shopware hinterlegen. RabbitMQ und OpenSearch können Sie als Umgebungsvariable in der ".env"-Datei hinterlegen. Redis muss je nach Stand Ihrer Installation ggf. in einer der Konfigurationsdateien hinterlegt werden.


version: '3.8'
name: shopware6
services:

  redis:
    # please get recent version from Docker hub
    # see https://hub.docker.com/_/redis/tags?name=alpine
    image: redis:7.4.1-alpine
    restart: always
    ports:
      - '6379:6379'
    command: redis-server --save 20 1 --loglevel warning --requirepass fCHrbJRXGGnrlXS
    volumes:
      - redis:/data

  opensearch:
    image: opensearchproject/opensearch:2
    restart: always
    ports:
      - '9200:9200'
      - '9600:9600'
    environment:
      - cluster.name=opensearch
      - node.name=opensearch
      - discovery.type=single-node
      - bootstrap.memory_lock=true
      - "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
      - "DISABLE_INSTALL_DEMO_CONFIG=true"
      - "DISABLE_SECURITY_PLUGIN=true"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - opensearch:/usr/share/opensearch/data

  rabbitmq:
    image: rabbitmq:3-management-alpine
    container_name: 'rabbitmq'
    ports:
      - 5672:5672
      - 15672:15672
    volumes:
      - rabbitmq:/var/lib/rabbitmq/

volumes:
  redis:
    driver: local
  opensearch:
    driver: local
  rabbitmq:
    driver: local

Webhosting-Anbieter gibt es viele, aber Hetzner Online hat sich für uns als zuverlässige und kostengünstige Lösung erwiesen. Wir haben überaus positive Erfahrungen mit dem Managed Hosting von Hetzner gemacht. Wenn Sie jedoch Shopware 6 betreiben möchten, benötigen Sie einen zusätzlichen VPS, da auf dem regulären Webspace keine Docker-Container ausgeführt werden können.

Ein kleiner VPS – bereits für weniger als 10 € im Monat – reicht in vielen Fällen aus, um Shopware 6 bei moderater Last zu betreiben. In der Hetzner KonsoleH können Sie die notwendigen Ports öffnen, damit der Webserver auf die externen Dienste zugreifen kann.


Sicherheit geht vor: Firewall-Konfiguration in der Hetzner Cloud

Ein entscheidender Punkt für den sicheren Betrieb Ihres Online-Shops ist die richtige Absicherung der Dienste. Über die Hetzner Cloud Firewall können Sie den Datenverkehr so einschränken, dass nur Ihr Webserver Zugriff auf die Microservices hat. So bleibt Ihr Setup geschützt vor unbefugtem Zugriff.

Dieses Setup lässt sich nicht nur bei Hetzner umsetzen, sondern auch bei anderen Webhostern, die VPS-Dienste anbieten.