version: "3.8" services: cache: image: redis:4-alpine database: image: mysql:8.0-oracle ports: - "3306:3306" volumes: - "./docker/database/:/docker-entrypoint-initdb.d/" - "./docker/database/mysql:/var/lib/mysql" environment: MYSQL_ALLOW_EMPTY_PASSWORD: "yes" MYSQL_DATABASE: "fleetbase" socket: image: socketcluster/socketcluster:v17.4.0 ports: - "38000:8000" environment: SOCKETCLUSTER_WORKERS: 10 SOCKETCLUSTER_BROKERS: 10 queue: build: context: . dockerfile: docker/Dockerfile target: events-dev args: ENVIRONMENT: development environment: DATABASE_URL: "mysql://root@database/fleetbase" QUEUE_CONNECTION: redis CACHE_DRIVER: redis CACHE_PATH: /fleetbase/api/storage/framework/cache CACHE_URL: tcp://cache REDIS_URL: tcp://cache application: ports: - "4201:4201" build: context: . dockerfile: docker/Dockerfile target: app-dev args: ENVIRONMENT: development GITHUB_AUTH_KEY: ${GITHUB_AUTH_KEY} environment: DATABASE_URL: "mysql://root@database/fleetbase" QUEUE_CONNECTION: redis CACHE_DRIVER: redis CACHE_PATH: /fleetbase/api/storage/framework/cache CACHE_URL: tcp://cache REDIS_URL: tcp://cache SESSION_DOMAIN: localhost BROADCAST_DRIVER: socketcluster MAIL_FROM_NAME: Fleetbase APP_NAME: Fleetbase LOG_CHANNEL: daily MODEL_CACHE_ENABLED: 'true' RESPONSE_CACHE_ENABLED: 'true' RESPONSE_CACHE_DRIVER: redis depends_on: - database - cache - queue httpd: build: context: . dockerfile: docker/httpd/Dockerfile ports: - "8000:80" depends_on: - application