Installation
- installation via Docker
- redis zu wordpress docker hinzufügen
- Einstellungen Brutto Preise also inklusive MwSt anzeigen
- Kundenkonto erstellen unter mein Konto und beim bezahlen
installation via Docker
Beschreibung:
Docker installation mit mariadb caddy und Wordpress natürlich
Installation
Projektverzeichnis anlegen
mkdir /root/wordpress
Dort drin eine .env Datei anlegen
nano /root/wordpress/.env
Inhalt
# MariaDB Einstellungen
MYSQL_ROOT_PASSWORD=rootpassword
MYSQL_DATABASE=wordpress
MYSQL_USER=wordpress
MYSQL_PASSWORD=wordpresspass
# Domain/Hostname für Caddy
CADDY_HOST=shop.example.com
Die docker compose Datei
nano /root/wordpress/docker-compose.yml
Inhalt
version: '3.8'
services:
mariadb:
image: mariadb:latest
restart: always
volumes:
- ./data/mariadb:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
wordpress:
image: wordpress:latest
restart: always
depends_on:
- mariadb
environment:
WORDPRESS_DB_HOST: mariadb:3306
WORDPRESS_DB_USER: ${MYSQL_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_PASSWORD}
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
volumes:
- ./data/wordpress:/var/www/html
- ./php.ini:/usr/local/etc/php/conf.d/custom.ini
caddy:
image: caddy:latest
restart: always
ports:
- "80:80"
- "443:443"
command: caddy reverse-proxy --from ${CADDY_HOST} --to wordpress:80
volumes:
- ./data/caddy/data:/data
- ./data/caddy/config:/config
nun noch die php.ini anlegen für 512MB uploads
nano /root/wordpress/php.ini
Inhalt
upload_max_filesize = 512M
post_max_size = 2048M
nun den Container starten
docker-compose up -d
Nun noch die ufw Firewall regeln anpassen.
Da hier der Docker container sowieso von außen erreichbar sein soll, brauchen wir hier keine Anspassung für docker.
Aber ssh soll nur auf der lokalen Netzwerkkarte zur Verfügung stehen
ufw allow in on enp6s18 to any port 22
ufw enable
Cron Jobs richtig zum Laufen bringen Caddy Fehler:
Code Snippet hinzufügen über Plugin für die WP Cron Dienste um folgenden Fehler zu vermeiden
Sie Seite Fehler: cURL error 28: Operation timed out after 3000 milliseconds und Aktionsplaner: 90 überfällige Aktionen gefunden;
redis zu wordpress docker hinzufügen
Beschreibung:
Sollte die Wordpress instanz ziemlich langsam laufen, kann man einen Redis Service mit zwischen packen.
Unsere docker-compose Datei baut auf der ersten auf.
Dann muss noch das Redis Cache Plugin installiert werden
Einrichtung:
Docker-compose:
Die eigentlichen Änderungen
Einen Redis Service hinzufügen.
...
redis:
image: redis:alpine
restart: always
...
im Wordpress service eine environment variable hinzufügen WP_REDIS_HOST: redis
und depends on -redis hinzufügen
...
depends_on:
- mariadb
- redis
environment:
WORDPRESS_DB_HOST: mariadb:3306
WORDPRESS_DB_USER: ${MYSQL_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_PASSWORD}
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
WP_REDIS_HOST: redis
...
Hier nochmals unsere komplette docker compose Datei
version: '3.8'
services:
mariadb:
image: mariadb:latest
restart: always
volumes:
- ./data/mariadb:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
redis:
image: redis:alpine
restart: always
wordpress:
image: wordpress:latest
restart: always
depends_on:
- mariadb
- redis
environment:
WORDPRESS_DB_HOST: mariadb:3306
WORDPRESS_DB_USER: ${MYSQL_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_PASSWORD}
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
WP_REDIS_HOST: redis
volumes:
- ./data/wordpress:/var/www/html
- ./php.ini:/usr/local/etc/php/conf.d/custom.ini
caddy:
image: caddy:latest
restart: always
ports:
- "80:80"
- "443:443"
command: caddy reverse-proxy --from ${CADDY_HOST} --to wordpress:80
volumes:
- ./data/caddy/data:/data
- ./data/caddy/config:/config
Wordpressplugin aktivieren
Siehe Artikel Wordpress Redis Plugin : Addon - Redis Cache
Einstellungen Brutto Preise also inklusive MwSt anzeigen
Beschreibung:
Standardmäßig sind die Artikelpreise Netto Preise + Steuer.
Um dies zu ändern, in die Woocomerce Einstellungen gehen
Automated tax deaktivieren, dann speichern und nun kann Preise inklusive Steuern angegeben werden.
Und Preise im Shop anzeigen Steuern eingeschlossen
Preise Während Bestell Warenkorb und Bezahlvorgangs (Kasse) anzeigen Steuern eingeschlossen.
Dann Auf der Seite Allgemein bei Einstellungen
Dort unter Voreingestellter Ort für Kunden : Land Region des Stores
fertig
Kundenkonto erstellen unter mein Konto und beim bezahlen
Beschreibung:
Damit Kunden die Möglichkeit haben, Ihre Bestellungen zu speichern.
müssen wir einstellen, das in Mein konto und beim Bezahlen die möglichkeit besteht ein kundenkonto anzulegen.
Dazu gehen wir unter Einstellungen -> Konten und Datenschutz
Wir möchten nicht das Gäste kaufen können, da sonst die Käufe nicht in der Historie gespeichert sind. Also Haken raus.
Durch Eingabe der Emailadresse wird dann automatisch ein Kundenkonto erstellt, da Gast Bestellung nicht möglich sind
Anmeldung während des Bezahlvorgangs rein, damit vorhandene Kunden sich anmelden können. Haken rein
Kunden Konto Erstellung erlauben haken rein bei
Beim bezahlen
Auf der Seite mein Konto
sonst wird kein Kundenkonto durch Emailadresse erstellt.
Link zur Einrichtung des Passworts zusenden haken rein.