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
caddy:
image: caddy:latest
restart: always
ports:
- "80:80"
- "443:443"
command: ["reverse-proxy", "--from", "{$CADDY_HOST}", "--to", "wordpress:80"]
volumes:
- ./data/caddy/data:/data
- ./data/caddy/config:/config
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