services: db: image: mariadb:11 environment: MARIADB_DATABASE: ${WORDPRESS_DB_NAME} MARIADB_USER: ${WORDPRESS_DB_USER} MARIADB_PASSWORD: ${WORDPRESS_DB_PASSWORD} MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD} volumes: - db_data:/var/lib/mysql healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] interval: 10s timeout: 5s retries: 10 start_period: 30s wordpress: container_name: gustavoo-me image: wordpress:php8.3-apache ports: - "${WORDPRESS_PORT:-8080}:80" environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME} WORDPRESS_DB_USER: ${WORDPRESS_DB_USER} WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD} volumes: - wordpress_data:/var/www/html - ./wp-content/themes:/var/www/html/wp-content/themes - ./wp-content/plugins:/var/www/html/wp-content/plugins - ./php.ini:/usr/local/etc/php/conf.d/uploads.ini depends_on: db: condition: service_healthy redis: condition: service_healthy redis: image: redis:7-alpine volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 10 start_period: 10s wpcli: image: wordpress:cli-php8.3 user: "${WPCLI_UID:-33}:${WPCLI_GID:-33}" depends_on: wordpress: condition: service_started redis: condition: service_healthy environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME} WORDPRESS_DB_USER: ${WORDPRESS_DB_USER} WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD} WORDPRESS_PORT: ${WORDPRESS_PORT:-8080} WORDPRESS_SITE_URL: ${WORDPRESS_SITE_URL:-http://localhost:${WORDPRESS_PORT:-8080}} WORDPRESS_SITE_TITLE: ${WORDPRESS_SITE_TITLE:-Gustavo Portfolio} WORDPRESS_ADMIN_USER: ${WORDPRESS_ADMIN_USER:-admin} WORDPRESS_ADMIN_PASSWORD: ${WORDPRESS_ADMIN_PASSWORD:-admin} WORDPRESS_ADMIN_EMAIL: ${WORDPRESS_ADMIN_EMAIL:-admin@example.com} WP_REDIS_HOST: ${WP_REDIS_HOST:-redis} WP_REDIS_PORT: ${WP_REDIS_PORT:-6379} WP_REDIS_PASSWORD: ${WP_REDIS_PASSWORD:-} WP_REDIS_DATABASE: ${WP_REDIS_DATABASE:-} WP_EXTRA_PLUGINS: ${WP_EXTRA_PLUGINS:-post-views-counter seo-by-rank-math google-site-kit fluentform fluent-crm fluent-smtp} WP_LOCALE: ${WP_LOCALE:-pt_BR} WP_SKIP_UPDATES: ${WP_SKIP_UPDATES:-} WP_THEME: ${WP_THEME:-gustavoo-portfolio} WP_KEEP_THEMES: ${WP_KEEP_THEMES:-} FORBIDDEN_PATTERN: ${FORBIDDEN_PATTERN:-} WP_ALLOW_FORBIDDEN_PLUGINS: ${WP_ALLOW_FORBIDDEN_PLUGINS:-} HOME: /tmp volumes: - wordpress_data:/var/www/html - ./wp-content/themes:/var/www/html/wp-content/themes - ./wp-content/plugins:/var/www/html/wp-content/plugins - ./docker/wp-init.sh:/wp-init.sh:ro entrypoint: ["sh", "/wp-init.sh"] restart: "no" volumes: db_data: wordpress_data: redis_data: