Skip to content
Snippets Groups Projects
docker-compose.yml 2.08 KiB
version: '3.7'
services:
  phpdeps:
    image: prooph/composer:7.3
    volumes:
      - .:/app
    command: install
  assets:
    image: node:10
    volumes:
      - .:/usr/src/app
    working_dir: /usr/src/app
    command: bash -c "npm install && npm run watch"
  dependencies:
    depends_on:
      - "mgdb"
    image: php:7.3-cli
    volumes:
      - .:/data
    working_dir: /data
    command: /bin/sh -c "/data/init.sh"
  mgdb:
    restart: on-failure
    image: mariadb:latest
    command: --default-authentication-plugin=mysql_native_password
    environment:
      - MYSQL_RANDOM_ROOT_PASSWORD=yes
      - MYSQL_USER=metager
      - MYSQL_PASSWORD=metager
      - MYSQL_DATABASE=metager
  redis:
    restart: on-failure
    image: redis:6
  phpfpm:
    depends_on:
      - "mgdb"
      - "dependencies"
      - "phpdeps"
      - "assets"
      - "redis"
    restart: on-failure
    build:
      context: .
      dockerfile: DockerfileDev
    image: metager:latest
    working_dir: /html
    volumes:
      - .:/html
  nginx:
    depends_on:
      - "phpfpm"
    restart: on-failure
    image: metager:latest
    working_dir: /html
    command: nginx
    volumes:
      - .:/html
      - ./config/nginx.conf:/etc/nginx/nginx.conf
      - ./config/nginx-default-dev.conf:/etc/nginx/sites-available/default
    ports: 
    - "8080:80"
  worker:
    depends_on:
      - "phpfpm"
    restart: on-failure
    image: metager:latest
    working_dir: /html
    volumes:
      - .:/html
    command: "su -s /bin/sh -c 'php artisan requests:fetcher' www-data"