services: # Laravel Backend Service laravel.test: build: context: './backend/vendor/laravel/sail/runtimes/8.4' dockerfile: Dockerfile args: WWWGROUP: '${WWWGROUP:-20}' WWWUSER: '${WWWUSER:-501}' image: 'sail-8.4/app' extra_hosts: - 'host.docker.internal:host-gateway' ports: - '${VITE_PORT:-5180}:5173' environment: WWWUSER: '${WWWUSER:-501}' WWWGROUP: '${WWWGROUP:-20}' LARAVEL_SAIL: 1 XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}' XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}' IGNITION_LOCAL_SITES_PATH: '${PWD}' # --- Anbindung an das Mutterschiff --- DB_CONNECTION: mysql DB_HOST: global-mysql DB_PORT: 3306 DB_DATABASE: thats-me DB_USERNAME: root DB_PASSWORD: password MAIL_HOST: global-mailpit MAIL_PORT: 1025 REDIS_HOST: global-redis volumes: - './backend:/var/www/html' - '.:/workspace:cached' networks: - sail - proxy labels: - "traefik.enable=true" - "traefik.http.routers.thatsme-main.rule=Host(`thats-me.test`)" - "traefik.http.routers.thatsme-main.entrypoints=websecure" - "traefik.http.routers.thatsme-main.tls=true" - "traefik.http.routers.thatsme-main.service=thatsme-service" - "traefik.http.routers.thatsme-portal.rule=Host(`portal.thats-me.test`)" - "traefik.http.routers.thatsme-portal.entrypoints=websecure" - "traefik.http.routers.thatsme-portal.tls=true" - "traefik.http.routers.thatsme-portal.service=thatsme-service" - "traefik.http.routers.thatsme-api.rule=Host(`api.thats-me.test`)" - "traefik.http.routers.thatsme-api.entrypoints=websecure" - "traefik.http.routers.thatsme-api.tls=true" - "traefik.http.routers.thatsme-api.service=thatsme-service" - "traefik.http.routers.thatsme-assets.rule=Host(`assets.thats-me.test`)" - "traefik.http.routers.thatsme-assets.entrypoints=websecure" - "traefik.http.routers.thatsme-assets.tls=true" - "traefik.http.routers.thatsme-assets.service=thatsme-assets-service" - "traefik.http.services.thatsme-service.loadbalancer.server.port=80" - "traefik.http.services.thatsme-assets-service.loadbalancer.server.port=5173" - "traefik.http.services.thatsme-assets-service.loadbalancer.server.scheme=http" - "traefik.docker.network=proxy" # Quasar Frontend Service quasar.app: image: 'node:20-alpine' working_dir: /app command: sh -c "npm install && npm run dev" ports: - '${QUASAR_PORT:-9000}:9000' environment: NODE_ENV: development volumes: - './frontend:/app' - 'quasar-node-modules:/app/node_modules' networks: - sail - proxy labels: - "traefik.enable=true" - "traefik.http.routers.thatsme-app.rule=Host(`app.thats-me.test`)" - "traefik.http.routers.thatsme-app.entrypoints=websecure" - "traefik.http.routers.thatsme-app.tls=true" - "traefik.http.routers.thatsme-app.service=thatsme-app-service" - "traefik.http.services.thatsme-app-service.loadbalancer.server.port=9000" - "traefik.http.services.thatsme-app-service.loadbalancer.server.scheme=http" - "traefik.docker.network=proxy" networks: sail: driver: bridge proxy: external: true volumes: quasar-node-modules: driver: local