services: app: build: context: ./apps/sample-website dockerfile: Dockerfile args: NEXT_PUBLIC_BASE_URL: ${NEXT_PUBLIC_BASE_URL:-http://localhost:3000} NEXT_PUBLIC_UMAMI_WEBSITE_ID: ${NEXT_PUBLIC_UMAMI_WEBSITE_ID} NEXT_PUBLIC_UMAMI_SCRIPT_URL: ${NEXT_PUBLIC_UMAMI_SCRIPT_URL} NEXT_PUBLIC_TARGET: ${TARGET:-development} restart: always networks: - infra env_file: - .env ports: - "3000:3000" labels: - "traefik.enable=true" - "traefik.http.routers.sample-website.rule=Host(`${TRAEFIK_HOST:-sample-website.localhost}`)" - "traefik.http.services.sample-website.loadbalancer.server.port=3000" - "caddy=http://${TRAEFIK_HOST:-acquisition.localhost}" - "caddy.reverse_proxy={{upstreams 3000}}" at-mintel-ui: image: node:22-alpine working_dir: /app volumes: - .:/app - ui_pnpm_store:/pnpm environment: - CI=true networks: - infra restart: unless-stopped command: > sh -c "corepack enable && pnpm config set store-dir /pnpm && pnpm install --no-frozen-lockfile --ignore-scripts || true; echo 'Starting ladle...'; pnpm --filter @mintel/ui exec ladle serve --host 0.0.0.0 --port 61000" labels: - "caddy=http://ui.localhost" - "caddy.reverse_proxy={{upstreams 61000}}" at-mintel-video: image: node:22-alpine working_dir: /app volumes: - .:/app - ui_pnpm_store:/pnpm environment: - CI=true networks: - infra restart: unless-stopped command: > sh -c "corepack enable && pnpm config set store-dir /pnpm && pnpm install --no-frozen-lockfile --ignore-scripts || true; pnpm --filter @mintel/example-video exec remotion studio --host 0.0.0.0 --port 3001" labels: - "caddy=http://video.localhost" - "caddy.reverse_proxy={{upstreams 3001}}" networks: infra: external: true volumes: ui_pnpm_store: