version: "3.9" services: app: build: . restart: 'always' ports: - "8081:80" networks: - internal env_file: - .env.docker environment: CONTAINER_ROLE: app # SEED_DB: true volumes: - ./app:/var/www/html/app - ./config:/var/www/html/config - ./resources:/var/www/html/resources - ./routes:/var/www/html/routes - ./storage:/var/www/html/storage - ./tests:/var/www/html/tests - ./avatars:/var/www/html/public/uploads/avatars ## Un-comment the following line if you need to deal with frontend code. ## The built assets will be overwritten by whatever is in your host ## system, so run a local `npm run dev` on your host system to compile ## your changed assets. The app container works as the webserver, and the ## scheduler and the queue handler don't need the frontend dependencies ## at this time. ## Please don't commit the un-commenting to keep the dependencies ## on the host computer as small as possible. #- ./public:/var/www/html/public scheduler: build: . restart: 'always' networks: - internal env_file: - .env.docker environment: CONTAINER_ROLE: scheduler volumes: - ./app:/var/www/html/app - ./config:/var/www/html/config - ./resources:/var/www/html/resources - ./routes:/var/www/html/routes - ./storage:/var/www/html/storage - ./tests:/var/www/html/tests - ./avatars:/var/www/html/public/uploads/avatars queue: build: . restart: 'always' networks: - internal env_file: - .env.docker environment: CONTAINER_ROLE: queue volumes: - ./app:/var/www/html/app - ./config:/var/www/html/config - ./resources:/var/www/html/resources - ./routes:/var/www/html/routes - ./storage:/var/www/html/storage - ./tests:/var/www/html/tests - ./avatars:/var/www/html/public/uploads/avatars database: image: mariadb:10 restart: 'always' ports: - "3306:3306" volumes: - ./database/docker-container-state:/var/lib/mysql networks: - internal environment: - TZ=Europe/Berlin env_file: - .env.docker db-rest: # we are stuck on db-rest version 5, image: derhuerst/db-rest:5 restart: always depends_on: - redis environment: REDIS_URL: "redis://redis:6379" networks: - internal redis: image: redis restart: always networks: - internal networks: internal: external: false