services:
  core:
    build:
      context: ../../core
      dockerfile: ../deploy/dev/Dockerfile.backend
    command: bash -c 'python manage.py migrate && python manage.py runserver 0.0.0.0:8000'
    environment:
      - HTTP_HOST=core
      - DB_HOST=db
      - DB_PORT=3306
      - DB_NAME=system3
      - DB_USER=system3
      - DB_PASSWORD=system3
    volumes:
      - ../../core:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

  frontend:
    build:
      context: ../../web
      dockerfile: ../deploy/dev/Dockerfile.frontend
    command: npm run serve
    volumes:
      - ../../web:/web:ro
      - /web/node_modules
      - ./vue.config.js:/web/vue.config.js
    ports:
      - "8080:8080"
    depends_on:
      - core

  db:
    image: mariadb
    environment:
      MARIADB_RANDOM_ROOT_PASSWORD: true
      MARIADB_DATABASE: system3
      MARIADB_USER: system3
      MARIADB_PASSWORD: system3
    volumes:
      - mariadb_data:/var/lib/mysql
    ports:
      - "3306:3306"

volumes:
  mariadb_data: