28 lines
922 B
Docker
28 lines
922 B
Docker
# LiteLLM Azure Container Apps Dockerfile
|
|
# 基于官方 litellm-database 镜像,支持 PostgreSQL 数据库
|
|
|
|
FROM docker.litellm.ai/berriai/litellm-database:main-stable
|
|
|
|
# 设置工作目录
|
|
WORKDIR /app
|
|
|
|
# 复制配置文件
|
|
COPY config.yaml /app/config.yaml
|
|
|
|
# 设置环境变量
|
|
ENV LITELLM_MODE=PRODUCTION
|
|
ENV LITELLM_LOG=ERROR
|
|
|
|
# 暴露端口
|
|
EXPOSE 4000
|
|
|
|
# 健康检查
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \
|
|
CMD curl -f http://localhost:4000/health/liveliness || exit 1
|
|
|
|
# 启动命令
|
|
# --num_workers: 根据 CPU 核心数设置,推荐与 vCPU 数量匹配
|
|
# --run_gunicorn: 使用 Gunicorn 运行,更稳定的 worker 回收机制
|
|
# --max_requests_before_restart: 每个 worker 处理 10000 个请求后重启,防止内存泄漏
|
|
CMD ["--port", "4000", "--config", "/app/config.yaml", "--num_workers", "4", "--run_gunicorn", "--max_requests_before_restart", "10000"]
|