services:
  db:
    image: mariadb:11.4
    environment:
      MARIADB_DATABASE: wordpress
      MARIADB_USER: wordpress
      MARIADB_PASSWORD: wordpress
      MARIADB_ROOT_PASSWORD: root
    volumes:
      - wp-compat-db:/var/lib/mysql
    healthcheck:
      test: ["CMD-SHELL", "mariadb-admin ping -h 127.0.0.1 -uroot -proot --silent"]
      interval: 5s
      timeout: 5s
      retries: 30
    networks:
      default:
        aliases:
          - mysql

  wordpress:
    image: wordpress:7.0.0-php8.4-apache
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_CONFIG_EXTRA: |
        define('WP_DEBUG', true);
        define('WP_DEBUG_LOG', true);
        define('WP_DEBUG_DISPLAY', false);
    volumes:
      - wp-compat-wordpress:/var/www/html
      - ./:/var/www/html/wp-content/plugins/my-right-horse

  wpcli:
    image: wordpress:cli-php8.4
    environment:
      WORDPRESS_DB_HOST: mysql:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
      SITE_URL: http://127.0.0.1:8080
      SITE_TITLE: My Right Horse Compatibility
      WP_ADMIN_EMAIL: wp-test-admin@example.com
      WP_ADMIN_PASSWORD: wp-test-password
      WP_ADMIN_USER: wp-test-admin
      WP_PATH: /var/www/html
    volumes:
      - wp-compat-wordpress:/var/www/html
      - ./:/var/www/html/wp-content/plugins/my-right-horse
    command: ["sh", "/var/www/html/wp-content/plugins/my-right-horse/scripts/wp-compat-bootstrap.sh"]

volumes:
  wp-compat-db:
  wp-compat-wordpress:
