Ich habe bereits schon hier eine Anleitung geschrieben, wie ihr WordPress normal „von Hand“ installieren könnt. Nun zeige ich euch, wie ihr dies in wenigen Minuten mit Docker realisiert. Traefik dient uns hier als Reverse Proxy und stellt später den Dienst verschlüsselt per TLS bereit.

Update

27.04.2020Traefik „secHeader“ hinzugefügt.
13.04.2020Server reagiert jetzt auch auf „www.“
01.04.2020Anleitung erstellt.

Wer Traefik noch nicht installiert hat, findet hier eine Anleitung, wie ihr dies schnell tun könnt.

Als Grundlage meiner Anleitung dient die offizielle WordPress Anleitung für Docker.

1. Ordner anlegen

Zuerst legen wir uns passende Ordner-Strukturen an.

mkdir -p /opt/containers/wordpress/{database,app}

2. Docker Compose anlegen

Nun legen wir die eigentliche Docker Datei an. Hierfür habe ich mir die offizielle WordPress Compose genommen und diese abgeändert für Traefik.

cd /opt/containers/wordpress/
nano docker-compose.yml

Inhalt

version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: unless-stopped
    environment:
      WORDPRESS_DB_HOST: wordpress-db
      WORDPRESS_DB_USER: exampleuser    ## Hier Benutzer eingeben ##
      WORDPRESS_DB_PASSWORD: examplepass ## Hier Passwort eingeben ##
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - /opt/containers/wordpress/app:/var/www/html
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.wordpress-app.entrypoints=http"
      - "traefik.http.routers.wordpress-app.rule=Host(`wordpress.euredomain.de`)"  ## Hier eure Domain eingeben ##
      - "traefik.http.middlewares.wordpress-app-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.wordpress-app.middlewares=wordpress-app-https-redirect"
      - "traefik.http.routers.wordpress-app-secure.entrypoints=https"
      - "traefik.http.routers.wordpress-app-secure.rule=Host(`wordpress.euredomain.de`)" ## Hier eure Domain eingeben ##
      - "traefik.http.routers.wordpress-app-secure.tls=true"
      - "traefik.http.routers.wordpress-app-secure.tls.certresolver=http"
      - "traefik.http.routers.wordpress-app-secure.service=wordpress-app"
      - "traefik.http.services.wordpress-app.loadbalancer.server.port=80"
      - "traefik.docker.network=proxy"
      - "traefik.http.routers.wordpress-app-secure.middlewares=secHeaders@file"

    networks:
      - proxy
      - default

  wordpress-db:
    image: mysql:5.7
    restart: unless-stopped
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_USER: exampleuser     ## Hier selben Benutzer eingeben ##
      MYSQL_PASSWORD: examplepass ## Hier selbes Passwort eingeben ##
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - /opt/containers/wordpress/database:/var/lib/mysql
    networks:
      - default

networks:
  proxy:
    external: true

Notwendige Anpassungen:

  1. MySQL Passwort ändern
  2. MySQL User ändern
  3. 2x eure Domain bei Traefik anpassen (wordpress.euredomain.de“)

Diese Docker Compose Datei funktioniert nur, wenn ich euch mittels meiner Anleitung hier Traefik installiert habt. Sonst heißen einige Traefik Variablen wohl anders. Diese müsst ihr dann dementsprechend bei euch anpassen.

Wenn ihr WordPress auf eurer „Hauptdomain“ haben wollt, so gebt ihr folgendes ein:

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

3. WordPress starten

WordPress startet ihr wie gewohnt mit folgendem Befehl:

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

4. WordPress einrichten

Wenn ihr nun auf „wordpress.euredomain.de“ geht, dann solltet ihr direkt zur Konfiguration kommen. Hier könnt ihr dann eure Sprache wählen sowie einen Administrator Benutzer erstellen.

5. Quellen

https://hub.docker.com/_/wordpress

Teile diesen Beitrag
Christian

Categories:

Keine Kommentare vorhanden

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.