version: '3.3'

services:

  db:
    container_name: "${APP_NAME}_db"
    image: mariadb:${DC_MARIADB_VERSION}
    restart: on-failure
    environment:
      MYSQL_DATABASE: ${WORDPRESS_DB_NAME}
      MYSQL_USER: ${WORDPRESS_DB_USER}
      MYSQL_PASSWORD: ${WORDPRESS_DB_PASSWORD}
      MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
    volumes:
      - db:/var/lib/mysql

  php:
    container_name: "${APP_NAME}_php"
    image: php:${DC_PHP_VERSION}

  wordpress-www:
    container_name: "${APP_NAME}_wordpress-www"
    depends_on:
      - db
    image: wordpress:${WORDPRESS_VERSION}
    ports:
      - ${WORDPRESS_PORT}:80
    restart: on-failure
    environment:
      WORDPRESS_DB_HOST: ${WORDPRESS_DB_HOST}
      WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
      WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
      WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
      WORDPRESS_TABLE_PREFIX: "${WORDPRESS_TABLE_PREFIX}"
      WORDPRESS_DEBUG: 1
    volumes:
      - wordpress:/var/www/html
      - ./upload.ini:/usr/local/etc/php/conf.d/uploads.ini
      - "../../../${WC_E2E_FOLDER}:${WC_E2E_FOLDER_MAPPING}"

  wordpress-cli:
    container_name: "${APP_NAME}_wordpress-cli"
    depends_on:
      - db
      - wordpress-www
    build:
        context: ./docker/wp-cli
    restart: on-failure
    environment:
        WORDPRESS_PORT: ${WORDPRESS_PORT}
        WORDPRESS_HOST: wordpress-www:80
        WORDPRESS_TITLE: ${WORDPRESS_TITLE}
        WORDPRESS_LOGIN: ${WORDPRESS_LOGIN}
        WORDPRESS_PASSWORD: ${WORDPRESS_PASSWORD}
        WORDPRESS_EMAIL: "${WORDPRESS_EMAIL}"
        WORDPRESS_DB_HOST: ${WORDPRESS_DB_HOST}
        WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
        WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
        WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
        DOMAIN_NAME:

    volumes:
      - wordpress:/var/www/html
      - "../../../${WC_E2E_FOLDER}:${WC_E2E_FOLDER_MAPPING}"

volumes:
  db:
  wordpress:
