109 lines
2.8 KiB
YAML
109 lines
2.8 KiB
YAML
secrets:
|
|
wordpress_db_password:
|
|
file: ./wordpress/wordpress_db_password
|
|
wordpress_db_root_password:
|
|
file: ./wordpress/wordpress_db_root_password
|
|
|
|
services:
|
|
|
|
wordpress_caddy:
|
|
image: docker.io/caddy:2.11.4-alpine
|
|
volumes:
|
|
- ./wordpress/Caddyfile-internal:/etc/caddy/Caddyfile:ro
|
|
- /nassella/wordpress/caddy-config:/config
|
|
- /nassella/wordpress/caddy-data:/data
|
|
- /nassella/wordpress/var-www-html:/var/www/html:ro
|
|
networks:
|
|
- lb
|
|
- wordpress_instance
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- wordpress
|
|
wordpress:
|
|
image: wordpress:php8.4-fpm
|
|
restart: unless-stopped
|
|
environment:
|
|
WORDPRESS_DB_HOST: wordpress_db
|
|
WORDPRESS_DB_USER: wordpress
|
|
WORDPRESS_DB_PASSWORD_FILE: /run/secrets/wordpress_db_password
|
|
WORDPRESS_DB_NAME: wordpress
|
|
depends_on:
|
|
wordpress_db:
|
|
condition: service_healthy
|
|
volumes:
|
|
- /nassella/wordpress/var-www-html:/var/www/html
|
|
- ./wordpress/custom.ini:/usr/local/etc/php/conf.d/custom.ini:ro
|
|
networks:
|
|
- wordpress_db
|
|
- wordpress_instance
|
|
- wordpress_outbound
|
|
secrets:
|
|
- wordpress_db_password
|
|
|
|
wordpress_db:
|
|
image: mysql:9.7
|
|
restart: always
|
|
environment:
|
|
MYSQL_DATABASE: wordpress
|
|
MYSQL_USER: wordpress
|
|
MYSQL_PASSWORD_FILE: /run/secrets/wordpress_db_password
|
|
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/wordpress_db_root_password
|
|
volumes:
|
|
- /nassella/wordpress/var-lib-mysql:/var/lib/mysql
|
|
networks:
|
|
- wordpress_db
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD-SHELL",
|
|
"MYSQL_PWD=$$(cat /run/secrets/wordpress_mysql_root_password) mysqladmin ping -h 127.0.0.1 -uroot --silent"
|
|
]
|
|
interval: 1s
|
|
start_period: 30s
|
|
start_interval: 10s
|
|
retries: 120
|
|
secrets:
|
|
- wordpress_db_password
|
|
- wordpress_db_root_password
|
|
|
|
# wordpress_init:
|
|
# image: wordpress:cli-php8.4
|
|
# restart: "no"
|
|
# depends_on:
|
|
# - wordpress_db
|
|
# - wordpress
|
|
# environment:
|
|
# WORDPRESS_DB_HOST: db
|
|
# WORDPRESS_DB_USER: exampleuser
|
|
# WORDPRESS_DB_PASSWORD: examplepass
|
|
# WORDPRESS_DB_NAME: exampledb
|
|
|
|
# WP_URL: "https://wp.nassella.org"
|
|
# WP_TITLE: "Nassella"
|
|
# WP_ADMIN_USER: "admin"
|
|
# WP_ADMIN_PASSWORD: "admin"
|
|
# WP_ADMIN_EMAIL: "admin@example.org"
|
|
|
|
# OIDC_CLIENT_ID: wordpress
|
|
# OIDC_CLIENT_SECRET: "secret"
|
|
# OIDC_PROVIDER: "https://auth.nassella.org"
|
|
|
|
# volumes:
|
|
# - /nassella/wordpress/var-www-html:/var/www/html
|
|
# - ./init:/scripts
|
|
|
|
# entrypoint:
|
|
# - /bin/bash
|
|
# - /scripts/init.sh
|
|
|
|
networks:
|
|
lb:
|
|
wordpress_instance:
|
|
driver: bridge
|
|
internal: true
|
|
wordpress_outbound:
|
|
driver: bridge
|
|
wordpress_db:
|
|
driver: bridge
|
|
internal: true
|