services: laravel.test: build: context: './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_PORTAL:-5177}:5177' - '${VITE_PORT_WEB:-5178}:5178' 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 # Hier definieren wir nur die Haupt-Datenbank für .env # Die anderen beiden richtest du in Laravel ein DB_DATABASE: presseportale DB_USERNAME: root DB_PASSWORD: password MAIL_HOST: global-mailpit MAIL_PORT: 1025 REDIS_HOST: global-redis volumes: - '.:/var/www/html' networks: - sail - proxy labels: - "traefik.enable=true" # Portal Domain - "traefik.http.routers.presseportale.rule=Host(`presseportale.test`)" - "traefik.http.routers.presseportale.entrypoints=websecure" - "traefik.http.routers.presseportale.tls=true" - "traefik.http.routers.presseportale.service=presseportale-service-prc" # Presseecho Domain - "traefik.http.routers.presseecho.rule=Host(`presseecho.test`)" - "traefik.http.routers.presseecho.entrypoints=websecure" - "traefik.http.routers.presseecho.tls=true" - "traefik.http.routers.presseecho.service=presseportale-service-prc" # Business Portal Domain - "traefik.http.routers.businessportal.rule=Host(`businessportal24.test`)" - "traefik.http.routers.businessportal.entrypoints=websecure" - "traefik.http.routers.businessportal.tls=true" - "traefik.http.routers.businessportal.service=presseportale-service-prc" # Asset Domain für Vite-Server Portal (Port 5177) - "traefik.http.routers.assets-portal.rule=Host(`assets.presseportale.test`)" - "traefik.http.routers.assets-portal.entrypoints=websecure" - "traefik.http.routers.assets-portal.tls=true" - "traefik.http.routers.assets-portal.service=assets-portal-service-prc" # Asset Domain für Vite-Server Presseecho - "traefik.http.routers.assets-presseecho.rule=Host(`assets.presseecho.test`)" - "traefik.http.routers.assets-presseecho.entrypoints=websecure" - "traefik.http.routers.assets-presseecho.tls=true" - "traefik.http.routers.assets-presseecho.service=assets-web-service-prc" # Asset Domain für Vite-Server Businessportal24 - "traefik.http.routers.assets-businessportal.rule=Host(`assets.businessportal24.test`)" - "traefik.http.routers.assets-businessportal.entrypoints=websecure" - "traefik.http.routers.assets-businessportal.tls=true" - "traefik.http.routers.assets-businessportal.service=assets-web-service-prc" # Service Definition - NUR EINMAL! - "traefik.http.services.presseportale-service-prc.loadbalancer.server.port=80" - "traefik.http.services.assets-portal-service-prc.loadbalancer.server.port=5177" - "traefik.http.services.assets-portal-service-prc.loadbalancer.server.scheme=http" - "traefik.http.services.assets-web-service-prc.loadbalancer.server.port=5178" - "traefik.http.services.assets-web-service-prc.loadbalancer.server.scheme=http" - "traefik.docker.network=proxy" networks: sail: driver: bridge proxy: external: true