# Copyright (C) 2024 Intel Corporation # SPDX-License-Identifier: Apache-2.0 services: vllm-service: image: ${REGISTRY:-opea}/vllm:${TAG:-latest} container_name: vllm-service ports: - ${VLLM_PORT:-8399}:80 volumes: - "${MODEL_CACHE:-./data}:/root/.cache/huggingface/hub" environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} VLLM_TORCH_PROFILER_DIR: "/mnt" healthcheck: test: ["CMD-SHELL", "curl -f http://localhost:80/health || exit 1"] interval: 10s timeout: 10s retries: 100 command: --model $LVM_MODEL_ID --host 0.0.0.0 --port 80 # --chat-template examples/template_llava.jinja # https://docs.vllm.ai/en/v0.5.0/models/vlm.html lvm: image: ${REGISTRY:-opea}/lvm:${TAG:-latest} container_name: lvm-xeon-server depends_on: vllm-service: condition: service_healthy ports: - "9399:9399" ipc: host environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} LVM_ENDPOINT: ${LVM_ENDPOINT} LVM_COMPONENT_NAME: "OPEA_VLLM_LVM" LLM_MODEL_ID: ${LVM_MODEL_ID} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 restart: unless-stopped visualqna-xeon-backend-server: image: ${REGISTRY:-opea}/visualqna:${TAG:-latest} container_name: visualqna-xeon-backend-server depends_on: - vllm-service - lvm ports: - "8888:8888" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - MEGA_SERVICE_HOST_IP=${MEGA_SERVICE_HOST_IP} - LVM_SERVICE_HOST_IP=${LVM_SERVICE_HOST_IP} ipc: host restart: always visualqna-xeon-ui-server: image: ${REGISTRY:-opea}/visualqna-ui:${TAG:-latest} container_name: visualqna-xeon-ui-server depends_on: - visualqna-xeon-backend-server ports: - "5173:5173" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - BACKEND_BASE_URL=${BACKEND_SERVICE_ENDPOINT} ipc: host restart: always visualqna-xeon-nginx-server: image: ${REGISTRY:-opea}/nginx:${TAG:-latest} container_name: visualqna-xeon-nginx-server depends_on: - visualqna-xeon-backend-server - visualqna-xeon-ui-server ports: - "${NGINX_PORT:-80}:80" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - FRONTEND_SERVICE_IP=${FRONTEND_SERVICE_IP} - FRONTEND_SERVICE_PORT=${FRONTEND_SERVICE_PORT} - BACKEND_SERVICE_NAME=${BACKEND_SERVICE_NAME} - BACKEND_SERVICE_IP=${BACKEND_SERVICE_IP} - BACKEND_SERVICE_PORT=${BACKEND_SERVICE_PORT} ipc: host restart: always networks: default: driver: bridge