# Copyright (C) 2024 Intel Corporation # SPDX-License-Identifier: Apache-2.0 services: vllm-service: image: ${REGISTRY:-opea}/vllm:${TAG:-latest} container_name: codetrans-xeon-vllm-service ports: - "8008:80" volumes: - "${MODEL_CACHE:-./data}:/root/.cache/huggingface/hub" shm_size: 1g environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HF_TOKEN} LLM_MODEL_ID: ${LLM_MODEL_ID} VLLM_TORCH_PROFILER_DIR: "/mnt" healthcheck: test: ["CMD-SHELL", "curl -f http://$host_ip:8008/health || exit 1"] interval: 10s timeout: 10s retries: 100 command: --model $LLM_MODEL_ID --host 0.0.0.0 --port 80 llm: image: ${REGISTRY:-opea}/llm-textgen:${TAG:-latest} container_name: codetrans-xeon-llm-server depends_on: vllm-service: condition: service_healthy ports: - "9000:9000" ipc: host environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} LLM_ENDPOINT: ${LLM_ENDPOINT} LLM_MODEL_ID: ${LLM_MODEL_ID} LLM_COMPONENT_NAME: ${LLM_COMPONENT_NAME} HF_TOKEN: ${HF_TOKEN} restart: unless-stopped codetrans-xeon-backend-server: image: ${REGISTRY:-opea}/codetrans:${TAG:-latest} container_name: codetrans-xeon-backend-server depends_on: - vllm-service - llm ports: - "${BACKEND_SERVICE_PORT:-7777}:7777" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - MEGA_SERVICE_HOST_IP=${MEGA_SERVICE_HOST_IP} - LLM_SERVICE_HOST_IP=${LLM_SERVICE_HOST_IP} ipc: host restart: always codetrans-xeon-ui-server: image: ${REGISTRY:-opea}/codetrans-ui:${TAG:-latest} container_name: codetrans-xeon-ui-server depends_on: - codetrans-xeon-backend-server ports: - "${FRONTEND_SERVICE_PORT:-5173}:5173" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - BASE_URL=${BACKEND_SERVICE_ENDPOINT} ipc: host restart: always codetrans-xeon-nginx-server: image: ${REGISTRY:-opea}/nginx:${TAG:-latest} container_name: codetrans-xeon-nginx-server depends_on: - codetrans-xeon-backend-server - codetrans-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