Files
self-hosted-docker-setups/wordpress/compose.yaml
2024-08-19 13:39:19 +01:00

49 lines
1.7 KiB
YAML

services:
wp_db:
# Mariadb image that supports both amd64 & arm64 architecture
image: mariadb:10.6.5-focal
# If you really want to use MySQL, uncomment the following line
#image: mysql:8.0.27
command: '--default-authentication-plugin=mysql_native_password'
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
- MYSQL_ROOT_PASSWORD=<secure-root-password> # Change this
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=<password> # Change this
expose:
- 3306
- 33060
wp_redis:
image: redis:alpine
restart: always
wordpress:
image: wordpress:latest
depends_on:
- wp_db
- wp_redis
volumes:
- wp_data:/var/www/html
ports:
- 80:80
restart: always
environment:
- WORDPRESS_DB_HOST=wp_db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=<password> # Change this (same as defined in `wp_db`)
- WORDPRESS_DB_NAME=wordpress
- |
WORDPRESS_CONFIG_EXTRA=
define( 'WP_HOME', 'https://example.com' ); # Change this to your domain
define( 'WP_SITEURL', 'https://example.com' ); # Change this to your domain
define( 'WP_REDIS_CLIENT', 'predis' ); define( 'WP_REDIS_SCHEME', 'tcp' );
define( 'WP_REDIS_HOST', 'wp_redis' ); define( 'WP_REDIS_PORT', '6379' );
define( 'WP_REDIS_PASSWORD', '' ); define( 'WP_REDIS_DATABASE', '0' );
define( 'WP_REDIS_MAXTTL', '900' ); define( 'WP_REDIS_SELECTIVE_FLUSH', 'xx_ ');
volumes:
db_data:
wp_data: