version: "3"
services:
  mysql:
    image: mysql
    container_name: my-mysql-container
    restart: always
    environment:
      MYSQL_DATABASE: my_wiki
      MYSQL_USER: wiki_user
      MYSQL_PASSWORD: my_secret_password
      MYSQL_RANDOM_ROOT_PASSWORD: "yes"
    volumes:
      - ./data:/var/lib/mysql

  redmine:
    depends_on:
      - mysql
    image: redmine
    container_name: my-redmine-container
    ports:
      - 8081:3000
    volumes:
      - ./data:/usr/src/redmine/files
    environment:
      - REDMINE_DB_MYSQL=mysql
      - REDMINE_DB_DATABASE=my_wiki
      - REDMINE_DB_USERNAME=wiki_user
      - REDMINE_DB_PASSWORD=my_secret_password

  wordpress:
    depends_on:
      - mysql
    image: wordpress
    container_name: my-wordpress-container
    ports:
      - 8082:80
    volumes:
      - ./wp-content:/var/www/html/wp-content
    environment:
      - WORDPRESS_DB_HOST=mysql
      - WORDPRESS_DB_USER=wiki_user
      - WORDPRESS_DB_PASSWORD=my_secret_password
      - WORDPRESS_DB_NAME=my_wiki
  
  mediawiki:
    depends_on:
      - mysql
    image: mediawiki
    container_name: my-mediawiki-container
    ports:
      - 8083:80
    restart: always
    environment:
      MW_INSTALL_PATH: /var/www/html
      MW_USE_INSTALLED: 'true'
      MW_ADMIN_NAME: admin
      MW_ADMIN_PASS: my_secret_password
      MW_DB_PORT: 3306
      MW_DB_HOST: mysql
      MW_DB_NAME: my_wiki
      MW_DB_USER: wiki_user
      MW_DB_PASS: my_secret_password
    volumes:
      - ./config:/var/www/html/config