services: llm_gateway_test: build: context: . image: llm_gateway container_name: llm_gateway_test ports: - "8877:8877" env_file: - .env environment: - TZ=Asia/Seoul stdin_open: true restart: always tty: true networks: - llm_gateway_test_net depends_on: redis: condition: service_healthy # ✅ 로그 디렉터리 호스트 마운트 volumes: - ./logs:/workspace/src/logs # ✅ 시작 시 로그 디렉터리 보장 후 uvicorn 실행 command: > sh -lc "mkdir -p /workspace/src/logs && exec uvicorn api:app --workers 4 --host 0.0.0.0 --port 8877 --log-config config/log_config.yaml" healthcheck: test: [ "CMD-SHELL", "curl -f http://localhost:8877/health/API && curl -f http://localhost:8877/health/Redis && curl -f http://localhost:8877/health/MinIO", ] interval: 60s timeout: 5s retries: 3 start_period: 10s redis: image: redis:7-alpine container_name: llm_gateway_test_redis command: [ "redis-server", "--maxmemory", "256mb", "--maxmemory-policy", "allkeys-lru", ] ports: - "6382:6379" restart: always networks: - llm_gateway_test_net healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 networks: llm_gateway_test_net: name: llm_gateway_test_net driver: bridge