Einführung
Erstellen eines Docker Containers für WordPress.
Voraussetzung
- Raspberry Pi mit Raspbian OS
- Docker
- Docker-Compose
- SWAG Setup
Container erstellen
Docker-Compose File:
version: '3.3'
services:
db-wp:
image: linuxserver/mariadb:latest
container_name: mariadb-wp
volumes:
- /sharefolder/AppDataSD/wp-mariadb:/config
restart: always
environment:
PUID: 1000
PGID: 100
TZ: Europe/Berlin
MYSQL_ROOT_PASSWORD: <password>
MYSQL_DATABASE: wordpress
MYSQL_USER: <user>
MYSQL_PASSWORD:<password>
ports:
- "3307:3306"
wordpress:
depends_on:
- db-wp
image: wordpress:latest
container_name: wordpress
ports:
- "8005:80"
restart: always
environment:
WORDPRESS_DB_HOST: 192.168.xx.xx:3307
WORDPRESS_DB_USER: <user>
WORDPRESS_DB_PASSWORD: <password>
WORDPRESS_DB_NAME: wordpress
volumes:
- /sharefolder/AppDataSD/wordpress:/var/www/html
networks:
default:
external:
name: my-net Erstelle Docker Network (falls nicht vorhanden):
docker network create my-net
docker-compose -f wordpress_docker-compose.yml up -d
Falls Redirect Fehler auftritt: Im WordPress Verzeichniss in wp-config folgendes ergänzen:
define(‚WP_HOME‘,’http://example.com‘);
define(‚WP_SITEURL‘,’http://maz-web.duckdns.org‘);
Duplikat der Website erstellen
Voraussetzung:
- Plugin ‚Duplicator‘
- Neue Domain verfügbar
- Reverse-Proxy Configs angepasst
- WordPress und DB Container für neue Domain erstellt
- Neues WordPress root Directory gelöscht
Vorgehen:
- neues Archiv erstellen: https://www.wpbeginner.com/wp-tutorials/how-to-clone-a-wordpress-site-in-7-easy-steps/
- Kopieren der Dateien über shell
- Fertigstellen: DB User und Password aus alter Datenbank
Update WordPress
Vor dem Update wird empfohlen mit Duplicator ein Archiv zu erstellen.
Container stoppen und löschen (WordPress und MariaDB):
docker rm -f wordpress
docker rm -f mariadb-wp
Neue images für WordPress und MariaDB herunterladen:
docker image pull wordpress:latest
docker image pull linuxserver/mariadb:latest
Docker-compose ausführen:
docker-compose -f wordpress_mariadb.yml up -d
In WordPress einloggen und die Upgrades über den Browser durchführen. Ebenso für die Plugins.
