This content originally appeared on DEV Community and was authored by Ruben Voß
Wieso so?
Um eine reproduzierbare Entwicklungs - Umgebung zu haben, ist es gut das Aufsetzen dieser Umgebung automatisch tun zu können. Dazu kann man docker compose benutzen. Hier zeige Ich euch ein docker-compose.yml, welches ein guter Startpunkt ist für eine reproduzierbare Entwicklungsumgebung.
Wir Benutzen hier als Stack
- wordpress:6.5.4-php8.1-apache
- mariadb:10.6.4-focal
- traefik:v3.0.3
Die docker-compose.yml
können wir mit dem wordpress - Service anfangen:
services:
wordpress:
# Am Besten die Wordpress - Version festsetzen
image: wordpress:6.5.4-php8.1-apache
volumes:
# Im wp_data Volume liegt der Wordpress - Code,
# So kannst du ihn mit anderen Containern teilen
- wp_data:/var/www/html
restart: always
environment:
# Hier kannst du durch deine eigenen Werte ersetzen
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
labels:
# Weiter unten konfigurieren wir dann traefik als Reverse Proxy
- traefik.enable=true
- traefik.http.routers.mywordpress.rule=Host(`localhost`)
networks:
# Füge dein Wordpress dem proxy Netzwerk hinzu:
- proxy
# Optional kannst du dir noch den richtigen Hostname geben,
# sonst beschwert sich Wordpress
hostname: localhost
Als nächstes kannst du die Datenbank hinzufügen:
db:
# Das mariadb image unterstützt amd64 & arm64 architecture
image: mariadb:11.4.2-noble
command: '--default-authentication-plugin=mysql_native_password'
volumes:
# Deine Datenbank ist unter dem db_data Volume gespeichert
- db_data:/var/lib/mysql
restart: always
environment:
# Hier kannst du durch deine eigenen Werte ersetzen
- MYSQL_ROOT_PASSWORD=somewordpress
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
expose:
- 3306
- 33060
networks:
- proxy
Jetzt müssen wir das ganze nur noch um unseren traefik Reverse - Proxy erweitern:
traefik:
image: traefik:v3.0.3
ports:
- "80:80"
- "8080:8080"
networks:
- proxy
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command:
# Lokal reicht das http - Setup
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
# Mit whoami kannst du traefik debuggen
whoami:
image: traefik/whoami:v1.8
networks:
- proxy
labels:
- traefik.enable=true
- traefik.http.routers.mywhoami.rule=Host(`whoami.localhost`)
networks:
proxy:
name: proxy
volumes:
letsencrypt:
name: letsencrypt
db_data:
wp_data:
Nun musst du nur noch docker compose up
Auf deinem Terminal ausführen, und dein Wordpress wird unter localhost bei dir erreichbar sein!
Happy Coden!
Dein Ruben
This content originally appeared on DEV Community and was authored by Ruben Voß
Ruben Voß | Sciencx (2024-06-23T20:55:00+00:00) Wie man WordPress lokal mit docker compose aufsetzt. Retrieved from https://www.scien.cx/2024/06/23/wie-man-wordpress-lokal-mit-docker-compose-aufsetzt/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.