services: klz-app: image: node:20-alpine working_dir: /app command: sh -c "npm install --legacy-peer-deps && npx next dev" networks: - default - infra volumes: - .:/app environment: NODE_ENV: development # Docker Internal Communication DIRECTUS_URL: http://directus:8055 INTERNAL_DIRECTUS_URL: http://directus:8055 INFRA_DIRECTUS_URL: http://cms-infra-infra-cms-1:8055 GATEKEEPER_URL: http://gatekeeper:3000 DIRECTUS_API_TOKEN: ${DIRECTUS_API_TOKEN} INFRA_DIRECTUS_TOKEN: ${INFRA_DIRECTUS_TOKEN} NEXT_PUBLIC_FEEDBACK_ENABLED: ${NEXT_PUBLIC_FEEDBACK_ENABLED} GATEKEEPER_BYPASS_ENABLED: ${GATEKEEPER_BYPASS_ENABLED} ports: - "3000:3000" labels: - "traefik.enable=true" # Global local settings - "traefik.http.routers.klz-cables-local.entrypoints=web" - "traefik.http.routers.klz-cables-local.rule=Host(`klz.localhost`)" - "traefik.http.routers.klz-cables-local.tls=false" - "traefik.http.routers.klz-cables-local.middlewares=" - "traefik.http.routers.klz-cables-local.service=klz-cables-local" - "traefik.http.services.klz-cables-local.loadbalancer.server.port=3000" - "traefik.docker.network=infra" # Web direct router - "traefik.http.routers.klz-cables-local-web.entrypoints=web" - "traefik.http.routers.klz-cables-local-web.rule=Host(`klz.localhost`)" - "traefik.http.routers.klz-cables-local-web.tls=false" - "traefik.http.routers.klz-cables-local-web.middlewares=" - "traefik.http.routers.klz-cables-local-web.service=klz-cables-local" directus: networks: - default - infra labels: - "traefik.enable=true" - "traefik.http.routers.klz-cables-directus-local.entrypoints=web" - "traefik.http.routers.klz-cables-directus-local.rule=Host(`cms.klz.localhost`)" - "traefik.http.routers.klz-cables-directus-local.tls=false" - "traefik.http.routers.klz-cables-directus-local.middlewares=" - "traefik.http.routers.klz-cables-directus-local.service=klz-cables-directus-local" - "traefik.http.services.klz-cables-directus-local.loadbalancer.server.port=8055" - "traefik.docker.network=infra" ports: - "${DIRECTUS_PORT:-8055}:8055" environment: PUBLIC_URL: http://cms.klz.localhost gatekeeper: image: node:20-alpine working_dir: /app/packages/gatekeeper command: sh -c "corepack enable && CI=true NPM_TOKEN=dummy pnpm install --no-frozen-lockfile && pnpm dev" volumes: - /Users/marcmintel/Projects/at-mintel:/app networks: - default - infra environment: DIRECTUS_URL: http://directus:8055 NEXT_PUBLIC_BASE_URL: http://gatekeeper.klz.localhost DIRECTUS_ADMIN_EMAIL: ${DIRECTUS_ADMIN_EMAIL} DIRECTUS_ADMIN_PASSWORD: ${DIRECTUS_ADMIN_PASSWORD} COOKIE_DOMAIN: localhost NODE_ENV: development labels: - "traefik.enable=true" - "traefik.http.routers.klz-cables-gatekeeper-local.entrypoints=web" - "traefik.http.routers.klz-cables-gatekeeper-local.rule=Host(`gatekeeper.klz.localhost`)" - "traefik.http.routers.klz-cables-gatekeeper-local.tls=false" - "traefik.http.routers.klz-cables-gatekeeper-local.service=klz-cables-gatekeeper-local" - "traefik.http.services.klz-cables-gatekeeper-local.loadbalancer.server.port=3000" - "traefik.docker.network=infra"