name: managed-portal services: managed-portal: build: context: .. dockerfile: Dockerfile args: VERSION: ${IMAGE_VERSION:-dev} image: managed-portal:${IMAGE_VERSION:-dev} container_name: managed-portal restart: unless-stopped depends_on: - store-dwell-alert - people-flow-project environment: TZ: ${TZ:-Asia/Shanghai} MANAGED_PORTAL_HTTP_ADDR: ":9080" MANAGED_PORTAL_REGISTRY_PATH: "/app/managed_services.yaml" MANAGED_PORTAL_HOST_SCAN_IMAGE: "managed-portal:${IMAGE_VERSION:-dev}" volumes: - /var/run/docker.sock:/var/run/docker.sock ports: - "${MANAGED_PORTAL_FORWARD_PORT_RANGE:-31000-31255}:31000-31255" networks: - managed-portal store-dwell-alert: build: context: ../managed/store_dwell_alert dockerfile: Dockerfile image: store-dwell-alert:${IMAGE_VERSION:-dev} container_name: store-dwell-alert restart: unless-stopped environment: TZ: ${TZ:-Asia/Shanghai} CAMERA_ID: ${MANAGED_STORE_DWELL_CAMERA_ID:-store_cam_01} RTSP_URL: ${MANAGED_STORE_DWELL_RTSP_URL:-} EVENT_SINK_PATH: ${MANAGED_STORE_DWELL_EVENT_SINK_PATH:-logs/events.jsonl} API_HOST: 0.0.0.0 API_PORT: 18081 CONFIG_PATH: /app/config/local.yaml extra_hosts: - "host.docker.internal:host-gateway" volumes: - ${MANAGED_STORE_DWELL_CONFIG_DIR:-../managed/store_dwell_alert/config}:/app/config - ${MANAGED_STORE_DWELL_DATA_DIR:-../managed/store_dwell_alert/data}:/app/data networks: - managed-portal people-flow-project: build: context: ../managed/people_flow_project dockerfile: Dockerfile image: people-flow-project:${IMAGE_VERSION:-dev} container_name: people-flow-project restart: unless-stopped gpus: all shm_size: "1gb" environment: TZ: ${TZ:-Asia/Shanghai} CONFIG_PATH: /opt/people-flow/config/local.yaml RTSP_URL: ${MANAGED_PEOPLE_FLOW_RTSP_URL:-} OUTPUT_DIR: /opt/people-flow/outputs API_HOST: 0.0.0.0 API_PORT: 18082 extra_hosts: - "host.docker.internal:host-gateway" volumes: - ${MANAGED_PEOPLE_FLOW_CONFIG_DIR:-../managed/people_flow_project/config}:/opt/people-flow/config - ${MANAGED_PEOPLE_FLOW_OUTPUT_DIR:-../managed/people_flow_project/outputs}:/opt/people-flow/outputs - ${MANAGED_PEOPLE_FLOW_WEIGHTS_DIR:-../managed/people_flow_project/weights}:/opt/people-flow/weights networks: - managed-portal managed-portal-web: build: context: ../web dockerfile: Dockerfile image: managed-portal-web:${IMAGE_VERSION:-dev} container_name: managed-portal-web restart: unless-stopped depends_on: - managed-portal ports: - "${MANAGED_PORTAL_WEB_PORT:-13000}:80" networks: - managed-portal networks: managed-portal: driver: bridge