version: "3.9" services: db: image: mariadb:11 container_name: ummah-db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD} MYSQL_DATABASE: ummah_wp MYSQL_USER: ummah_wp MYSQL_PASSWORD: ${DB_PASSWORD} volumes: - ummah-db-data:/var/lib/mysql networks: - ummah-net healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] interval: 10s timeout: 5s retries: 5 wordpress: image: wordpress:6.7-php8.3-fpm-alpine container_name: ummah-wp restart: unless-stopped depends_on: db: condition: service_healthy environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: ummah_wp WORDPRESS_DB_USER: ummah_wp WORDPRESS_DB_PASSWORD: ${DB_PASSWORD} WORDPRESS_TABLE_PREFIX: wp_ WORDPRESS_DEBUG: "false" # Performance PHP_MEMORY_LIMIT: 256M PHP_MAX_EXECUTION_TIME: 300 PHP_UPLOAD_MAX_FILESIZE: 64M PHP_POST_MAX_SIZE: 64M volumes: - ummah-wp-data:/var/www/html - ./wordpress-config/php.ini:/usr/local/etc/php/conf.d/ummah.ini:ro networks: - ummah-net nginx: image: nginx:alpine container_name: ummah-nginx restart: unless-stopped depends_on: - wordpress ports: - "8888:80" volumes: - ummah-wp-data:/var/www/html:ro - ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro networks: - ummah-net wpcli: image: wordpress:cli-2-php8.3 container_name: ummah-wpcli depends_on: - wordpress - db environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: ummah_wp WORDPRESS_DB_USER: ummah_wp WORDPRESS_DB_PASSWORD: ${DB_PASSWORD} volumes: - ummah-wp-data:/var/www/html networks: - ummah-net entrypoint: ["tail", "-f", "/dev/null"] profiles: ["tools"] networks: ummah-net: driver: bridge volumes: ummah-db-data: ummah-wp-data: