🐳 Docker, 部署
你可以在这里找到构建 litellm 代理的 Dockerfile:链接
快速开始
要开始使用 Litellm,请在 shell 中运行以下命令:
# 获取代码
git clone https://github.com/BerriAI/litellm
# 进入文件夹
cd litellm
# 添加主密钥 - 你可以在设置后更改此项
echo 'LITELLM_MASTER_KEY="sk-1234"' > .env
# 添加 litellm 盐密钥 - 添加模型后你无法更改此项
# 它用于加密/解密你的 LLM API 密钥凭证
# 我们推荐使用 - https://1password.com/password-generator/
# 密码生成器来获取 litellm 盐密钥的随机哈希
echo 'LITELLM_SALT_KEY="sk-1234"' >> .env
source .env
# 启动
docker-compose up
- 基础(无数据库)
- 使用 CLI 参数
- Terraform
- 使用 litellm 作为基础镜像
- Kubernetes
- Helm Chart
步骤 1. 创建 config.yaml
示例 litellm_config.yaml
model_list:
- model_name: azure-gpt-3.5
litellm_params:
model: azure/<your-azure-model-deployment>
api_base: os.environ/AZURE_API_BASE # 运行 os.getenv("AZURE_API_BASE")
api_key: os.environ/AZURE_API_KEY # 运行 os.getenv("AZURE_API_KEY")
api_version: "2023-07-01-preview"
步骤 2. 运行 Docker 镜像
docker run \
-v $(pwd)/litellm_config.yaml:/app/config.yaml \
-e AZURE_API_KEY=d6*********** \
-e AZURE_API_BASE=https://openai-***********/ \
-p 4000:4000 \
ghcr.io/berriai/litellm:main-latest \
--config /app/config.yaml --detailed_debug
获取最新镜像 👉 这里
步骤 3. 测试请求
传递 model=azure-gpt-3.5,这是在步骤 1 中设置的
curl --location 'http://0.0.0.0:4000/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"model": "azure-gpt-3.5",
"messages": [
{
"role": "user",
"content": "你是哪个llm"
}
]
}'
使用 LiteLLM CLI 参数运行
查看所有支持的 CLI 参数 这里:
以下是如何运行 docker 镜像并传递你的配置给 litellm
docker run ghcr.io/berriai/litellm:main-latest --config your_config.yaml
以下是如何运行 docker 镜像并在端口 8002 上启动 litellm,使用 num_workers=8
docker run ghcr.io/berriai/litellm:main-latest --port 8002 --num_workers 8
感谢 Nicholas Cecere 提供的 LiteLLM 用户管理 Terraform
# 使用提供的基础镜像
FROM ghcr.io/berriai/litellm:main-latest
# 设置工作目录为 /app
WORKDIR /app
# 将配置文件复制到容器中的 /app
COPY config.yaml .
# 确保你的 docker/entrypoint.sh 是可执行的
RUN chmod +x entrypoint.sh
# 暴露必要的端口
EXPOSE 4000/tcp
# 使用你想要的命令和参数覆盖 CMD 指令
# 警告:生产环境中不要使用 `--detailed_debug`,它会减慢响应时间,而是使用以下 CMD
# CMD ["--port", "4000", "--config", "config.yaml"]
CMD ["--port", "4000", "--config", "config.yaml", "--detailed_debug"]
部署基于配置文件的 litellm 实例只需要一个简单的部署,通过配置映射加载 config.yaml 文件。同时,为 api 密钥声明环境变量并附加带有 api 密钥值的不透明秘密是一个好的做法。
apiVersion: v1
kind: ConfigMap
metadata:
name: litellm-config-file
data:
config.yaml: |
model_list:
- model_name: gpt-3.5-turbo
litellm_params:
model: azure/gpt-turbo-small-ca
api_base: https://my-endpoint-canada-berri992.openai.azure.com/
api_key: os.environ/CA_AZURE_OPENAI_API_KEY
---
apiVersion: v1
kind: Secret
type: Opaque
metadata:
name: litellm-secrets
data:
CA_AZURE_OPENAI_API_KEY: bWVvd19pbV9hX2NhdA== # your api key in base64
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: litellm-deployment
labels:
app: litellm
spec:
selector:
matchLabels:
app: litellm
template:
metadata:
labels:
app: litellm
spec:
containers:
- name: litellm
image: ghcr.io/berriai/litellm:main-latest # it is recommended to fix a version generally
ports:
- containerPort: 4000
volumeMounts:
- name: config-volume
mountPath: /app/proxy_server_config.yaml
subPath: config.yaml
envFrom:
- secretRef:
name: litellm-secrets
volumes:
- name: config-volume
configMap:
name: litellm-config-file
为了避免可预测性问题、回滚困难和不一致的环境,请使用版本号或SHA摘要(例如,litellm:main-v1.30.3 或 litellm@sha256:12345abcdef...),而不是 litellm:main-latest。
[BETA] Helm Chart 处于 BETA 阶段。如果您遇到问题或有反馈,请告知我们 https://github.com/BerriAI/litellm/issues
当您想将 litellm helm chart 用作其他图表的依赖项时,请使用此选项。litellm-helm OCI 托管在此处 https://github.com/BerriAI/litellm/pkgs/container/litellm-helm
步骤 1. 拉取 litellm helm chart
helm pull oci://ghcr.io/berriai/litellm-helm
# 已拉取: ghcr.io/berriai/litellm-helm:0.1.2
# 摘要: sha256:7d3ded1c99c1597f9ad4dc49d84327cf1db6e0faa0eeea0c614be5526ae94e2a
步骤 2. 解压缩 litellm helm
解压缩在步骤 1 中拉取的特定版本
tar -zxvf litellm-helm-0.1.2.tgz
步骤 3. 安装 litellm helm
helm install lite-helm ./litellm-helm
步骤 4. 暴露服务到本地主机
kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT
您的 LiteLLM 代理服务器现在运行在 http://127.0.0.1:4000。
就是这样!这就是部署 litellm 的快速入门
与 Langchain、OpenAI SDK、LlamaIndex、Instructor、Curl 一起使用
💡 前往这里 👉 进行您的第一个 LLM API 请求
LiteLLM 兼容多个 SDK,包括 OpenAI SDK、Anthropic SDK、Mistral SDK、LlamaIndex、Langchain(Js、Python)
部署 LiteLLM 的选项
| 文档 | 使用时机 |
|---|---|
| 快速开始 | 调用 100+ LLM + 负载均衡 |
| 带数据库部署 | + 使用虚拟密钥 + 跟踪花费(注意:部署时需要提供 DATABASE_URL 和 LITELLM_MASTER_KEY 的环境变量) |
| LiteLLM 容器 + Redis | + 在多个 litellm 容器之间负载均衡 |
| LiteLLM 数据库容器 + PostgresDB + Redis | + 使用虚拟密钥 + 跟踪花费 + 在多个 litellm 容器之间负载均衡 |
带数据库部署
Docker、Kubernetes、Helm Chart
要求:
- 需要一个 postgres 数据库(例如 Supabase、Neon 等)在您的环境中设置
DATABASE_URL=postgresql://<user>:<password>@<host>:<port>/<dbname> - 设置一个
LITELLM_MASTER_KEY,这是您的代理管理密钥 - 您可以使用此密钥创建其他密钥(🚨 必须以sk-开头)
- Dockerfile
- Kubernetes
- Helm
- Helm OCI Registry (GHCR)
我们维护了一个 单独的 Dockerfile,以减少运行连接 Postgres 数据库的 LiteLLM 代理时的构建时间
docker pull ghcr.io/berriai/litellm-database:main-latest
docker run \
-v $(pwd)/litellm_config.yaml:/app/config.yaml \
-e LITELLM_MASTER_KEY=sk-1234 \
-e DATABASE_URL=postgresql://<user>:<password>@<host>:<port>/<dbname> \
-e AZURE_API_KEY=d6*********** \
-e AZURE_API_BASE=https://openai-***********/ \
-p 4000:4000 \
ghcr.io/berriai/litellm-database:main-latest \
--config /app/config.yaml --detailed_debug
您的 LiteLLM 代理服务器现在运行在 http://0.0.0.0:4000。
步骤 1. 创建 deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: litellm-deployment
spec:
replicas: 3
selector:
matchLabels:
app: litellm
template:
metadata:
labels:
app: litellm
spec:
containers:
- name: litellm-container
image: ghcr.io/berriai/litellm:main-latest
imagePullPolicy: Always
env:
- name: AZURE_API_KEY
value: "d6******"
- name: AZURE_API_BASE
value: "https://ope******"
- name: LITELLM_MASTER_KEY
value: "sk-1234"
- name: DATABASE_URL
value: "po**********"
args:
- "--config"
- "/app/proxy_config.yaml" # 更新路径以挂载配置文件
volumeMounts: # 定义proxy_config.yaml的卷挂载
- name: config-volume
mountPath: /app
readOnly: true
livenessProbe:
httpGet:
path: /health/liveliness
port: 4000
initialDelaySeconds: 120
periodSeconds: 15
successThreshold: 1
failureThreshold: 3
timeoutSeconds: 10
readinessProbe:
httpGet:
path: /health/readiness
port: 4000
initialDelaySeconds: 120
periodSeconds: 15
successThreshold: 1
failureThreshold: 3
timeoutSeconds: 10
volumes: # 定义挂载proxy_config.yaml的卷
- name: config-volume
configMap:
name: litellm-config
kubectl apply -f /path/to/deployment.yaml
步骤 2. 创建 service.yaml
apiVersion: v1
kind: Service
metadata:
name: litellm-service
spec:
selector:
app: litellm
ports:
- protocol: TCP
port: 4000
targetPort: 4000
type: NodePort
kubectl apply -f /path/to/service.yaml
步骤 3. 启动服务器
kubectl port-forward service/litellm-service 4000:4000
您的 LiteLLM 代理服务器现在运行在 http://0.0.0.0:4000。
[BETA] Helm Chart 处于 BETA 阶段。如果您遇到问题或有反馈,请告诉我们 https://github.com/BerriAI/litellm/issues
使用此方法通过 Helm Chart 部署 litellm。链接至 LiteLLM Helm Chart
步骤 1. 克隆仓库
git clone https://github.com/BerriAI/litellm.git
步骤 2. 使用 Helm 部署
在 litellm 仓库的根目录下运行以下命令。这将设置 litellm 代理主密钥为 sk-1234
helm install \
--set masterkey=sk-1234 \
mydeploy \
deploy/charts/litellm-helm
步骤 3. 将服务暴露到本地主机
kubectl \
port-forward \
service/mydeploy-litellm-helm \
4000:4000
您的 LiteLLM 代理服务器现在运行在 http://127.0.0.1:4000。
如果您需要设置 litellm 代理的 config.yaml,可以在 values.yaml 中找到
[BETA] Helm Chart 处于 BETA 阶段。如果您遇到问题或有反馈,请告诉我们 https://github.com/BerriAI/litellm/issues
当您想将 litellm helm chart 作为其他 chart 的依赖项时使用此方法。litellm-helm OCI 托管在此处 https://github.com/BerriAI/litellm/pkgs/container/litellm-helm
步骤 1. 拉取 litellm helm chart
helm pull oci://ghcr.io/berriai/litellm-helm
# 拉取: ghcr.io/berriai/litellm-helm:0.1.2
# 摘要: sha256:7d3ded1c99c1597f9ad4dc49d84327cf1db6e0faa0eeea0c614be5526ae94e2a
步骤 2. 解压缩 litellm helm
解压缩在步骤 1 中拉取的特定版本
tar -zxvf litellm-helm-0.1.2.tgz
步骤 3. 安装 litellm helm
helm install lite-helm ./litellm-helm
步骤 4. 将服务暴露到本地主机
kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT
您的 LiteLLM 代理服务器现在运行在 http://127.0.0.1:4000。
LiteLLM 容器 + Redis
当您需要 litellm 在多个 litellm 容器之间进行负载均衡时使用 Redis
唯一需要的更改是在 config.yaml 中设置 Redis
LiteLLM 代理支持在多个 litellm 实例之间共享 rpm/tpm,传递 redis_host、redis_password 和 redis_port 以启用此功能。(LiteLLM 将使用 Redis 跟踪 rpm/tpm 使用情况)
model_list:
- model_name: gpt-3.5-turbo
litellm_params:
model: azure/<your-deployment-name>
api_base: <your-azure-endpoint>
api_key: <your-azure-api-key>
rpm: 6 # 此部署的速率限制:每分钟请求数 (rpm)
- model_name: gpt-3.5-turbo
litellm_params:
model: azure/gpt-turbo-small-ca
api_base: https://my-endpoint-canada-berri992.openai.azure.com/
api_key: <your-azure-api-key>
rpm: 6
router_settings:
redis_host: <your redis host>
redis_password: <your redis password>
redis_port: 1992
使用配置启动 docker 容器
docker run ghcr.io/berriai/litellm:main-latest --config your_config.yaml
LiteLLM 数据库容器 + PostgresDB + Redis
唯一需要的更改是在 config.yaml 中设置 Redis
LiteLLM 代理支持在多个 litellm 实例之间共享 rpm/tpm,传递 redis_host、redis_password 和 redis_port 以启用此功能。(LiteLLM 将使用 Redis 跟踪 rpm/tpm 使用情况)
model_list:
- model_name: gpt-3.5-turbo
litellm_params:
model: azure/<your-deployment-name>
api_base: <your-azure-endpoint>
api_key: <your-azure-api-key>
rpm: 6 # 此部署的速率限制:每分钟请求数 (rpm)
- model_name: gpt-3.5-turbo
litellm_params:
model: azure/gpt-turbo-small-ca
api_base: https://my-endpoint-canada-berri992.openai.azure.com/
api_key: <your-azure-api-key>
rpm: 6
router_settings:
redis_host: <your redis host>
redis_password: <your redis password>
redis_port: 1992
使用配置启动 litellm-database docker 容器
docker run --name litellm-proxy \
-e DATABASE_URL=postgresql://<用户>:<密码>@<主机>:<端口>/<数据库名> \
-p 4000:4000 \
ghcr.io/berriai/litellm-database:main-latest --config your_config.yaml
无互联网连接的LiteLLM
默认情况下,prisma generate会下载prisma的引擎二进制文件。在没有互联网连接的情况下运行时可能会导致错误。
使用此Docker镜像部署带有预生成prisma二进制文件的litellm。
docker pull ghcr.io/berriai/litellm-non_root:main-stable
高级部署设置
1. 自定义服务器根路径(自定义代理基础URL)
💥 当您希望在自定义基础URL路径(如https://localhost:4000/api/v1)上提供LiteLLM服务时使用此功能。
在Kubernetes部署中,可以通过修改虚拟服务来利用共享DNS托管多个应用程序。
自定义根路径以消除在部署期间使用多个DNS配置的需求。
步骤1.
👉 在.env中设置SERVER_ROOT_PATH,这将被设置为您的服务器根路径
export SERVER_ROOT_PATH="/api/v1"
步骤2(如果您希望代理管理UI与您的根路径一起工作,则需要使用此Dockerfile)
- 使用下面的Dockerfile(它使用litellm作为基础镜像)
- 👉 在Dockerfile中设置
UI_BASE_PATH=$SERVER_ROOT_PATH/ui,例如UI_BASE_PATH=/api/v1/ui
Dockerfile
# 使用提供的基础镜像
FROM ghcr.io/berriai/litellm:main-latest
# 设置工作目录为/app
WORKDIR /app
# 安装Node.js和npm(根据需要调整版本)
RUN apt-get update && apt-get install -y nodejs npm
# 将UI源代码复制到容器中
COPY ./ui/litellm-dashboard /app/ui/litellm-dashboard
# 设置UI_BASE_PATH的环境变量
# 这可以在构建时被覆盖
# 将UI_BASE_PATH设置为"<您的服务器根路径>/ui"
# 👇👇 在此处输入您的UI_BASE_PATH
ENV UI_BASE_PATH="/api/v1/ui"
# 使用指定的UI_BASE_PATH构建UI
WORKDIR /app/ui/litellm-dashboard
RUN npm install
RUN UI_BASE_PATH=$UI_BASE_PATH npm run build
# 创建目标目录
RUN mkdir -p /app/litellm/proxy/_experimental/out
# 将构建的文件移动到适当的位置
# 假设构建输出在./out目录中
RUN rm -rf /app/litellm/proxy/_experimental/out/* && \
mv ./out/* /app/litellm/proxy/_experimental/out/
# 切换回主应用目录
WORKDIR /app
# 确保您的entrypoint.sh是可执行的
RUN chmod +x entrypoint.sh
# 暴露必要的端口
EXPOSE 4000/tcp
# 使用您所需的命令和参数覆盖CMD指令
# 仅在调试时使用--detailed_debug
CMD ["--port", "4000", "--config", "config.yaml"]
步骤3 构建此Dockerfile
docker build -f Dockerfile -t litellm-prod-build . --progress=plain
步骤4. 在您的环境中设置SERVER_ROOT_PATH运行代理
docker run \
-v $(pwd)/proxy_config.yaml:/app/config.yaml \
-p 4000:4000 \
-e LITELLM_LOG="DEBUG"\
-e SERVER_ROOT_PATH="/api/v1"\
-e DATABASE_URL=postgresql://<user>:<password>@<host>:<port>/<dbname> \
-e LITELLM_MASTER_KEY="sk-1234"\
litellm-prod-build \
--config /app/config.yaml
运行代理后,您可以在http://0.0.0.0:4000/api/v1/上访问它(因为我们设置了SERVER_ROOT_PATH="/api/v1")
步骤5. 验证运行在正确的路径
就是这样,这就是您在自定义根路径上运行代理所需的所有步骤
2. 设置SSL证书
如果您需要为您的本地LiteLLM代理设置SSL证书,请使用此功能。
在启动litellm代理时传递ssl_keyfile_path(SSL密钥文件路径)和ssl_certfile_path(SSL证书文件路径)
docker run ghcr.io/berriai/litellm:main-latest \
--ssl_keyfile_path ssl_test/keyfile.key \
--ssl_certfile_path ssl_test/certfile.crt
在启动litellm代理服务器时提供SSL证书
3. 使用Hypercorn运行Http/2
如果您希望使用hypercorn运行代理以支持http/2,请使用此功能。
用法
在启动代理时传递--run_hypercorn标志
docker run \
-v $(pwd)/proxy_config.yaml:/app/config.yaml \
-p 4000:4000 \
-e LITELLM_LOG="DEBUG"\
-e SERVER_ROOT_PATH="/api/v1"\
-e DATABASE_URL=postgresql://<user>:<password>@<host>:<port>/<dbname> \
-e LITELLM_MASTER_KEY="sk-1234"\
ghcr.io/berriai/litellm:main-latest \
--config /app/config.yaml
--run_hypercorn
4. 将LiteLLM config.yaml文件作为s3、GCS Bucket对象/URL提供
如果您无法在部署服务(例如AWS Fargate、Railway等)上挂载配置文件,请使用此功能。
LiteLLM代理将从s3 Bucket或GCS Bucket读取您的config.yaml
- GCS Bucket
- s3
设置以下.env变量
LITELLM_CONFIG_BUCKET_TYPE = "gcs" # 设置为 "gcs"
LITELLM_CONFIG_BUCKET_NAME = "litellm-proxy" # 你在GCS上的存储桶名称
LITELLM_CONFIG_BUCKET_OBJECT_KEY = "proxy_config.yaml" # GCS上的对象键
使用这些环境变量启动litellm代理 - litellm将从GCS读取你的配置
docker run --name litellm-proxy \
-e DATABASE_URL=<database_url> \
-e LITELLM_CONFIG_BUCKET_NAME=<bucket_name> \
-e LITELLM_CONFIG_BUCKET_OBJECT_KEY="<object_key>> \
-e LITELLM_CONFIG_BUCKET_TYPE="gcs" \
-p 4000:4000 \
ghcr.io/berriai/litellm-database:main-latest --detailed_debug
设置以下.env变量
LITELLM_CONFIG_BUCKET_NAME = "litellm-proxy" # 你在s3上的存储桶名称
LITELLM_CONFIG_BUCKET_OBJECT_KEY = "litellm_proxy_config.yaml" # s3上的对象键
使用这些环境变量启动litellm代理 - litellm将从s3读取你的配置
docker run --name litellm-proxy \
-e DATABASE_URL=<database_url> \
-e LITELLM_CONFIG_BUCKET_NAME=<bucket_name> \
-e LITELLM_CONFIG_BUCKET_OBJECT_KEY="<object_key>> \
-p 4000:4000 \
ghcr.io/berriai/litellm-database:main-latest
特定平台的指南
- AWS EKS - Kubernetes
- AWS Cloud Formation Stack
- Google Cloud Run
- Render部署
- Railway
Kubernetes - 在EKS上部署
步骤1. 使用以下规格创建EKS集群
eksctl create cluster --name=litellm-cluster --region=us-west-2 --node-type=t2.small
步骤2. 在kub集群上挂载litellm代理配置
这将把本地文件proxy_config.yaml挂载到kubernetes集群上
kubectl create configmap litellm-config --from-file=proxy_config.yaml
步骤3. 应用kub.yaml和service.yaml
克隆以下kub.yaml和service.yaml文件并在本地应用
使用此
kub.yaml文件 - litellm kub.yaml使用此
service.yaml文件 - litellm service.yaml
应用kub.yaml
kubectl apply -f kub.yaml
应用service.yaml - 创建一个AWS负载均衡器以暴露代理
kubectl apply -f service.yaml
# service/litellm-service created
步骤4. 获取代理基础URL
kubectl get services
# litellm-service LoadBalancer 10.100.6.31 a472dc7c273fd47fd******.us-west-2.elb.amazonaws.com 4000:30374/TCP 63m
代理基础URL = a472dc7c273fd47fd******.us-west-2.elb.amazonaws.com:4000
就是这样,现在你可以开始使用LiteLLM代理了
AWS Cloud Formation Stack
LiteLLM AWS Cloudformation Stack - 获取最佳LiteLLM自动扩展策略并为LiteLLM代理配置数据库
这将配置:
- LiteLLMServer - EC2实例
- LiteLLMServerAutoScalingGroup
- LiteLLMServerScalingPolicy (自动扩展策略)
- LiteLLMDB - RDS::DBInstance
使用AWS Cloud Formation Stack
LiteLLM Cloudformation堆栈位于这里 - litellm.yaml
1. 创建CloudFormation堆栈:
在AWS管理控制台中,导航到CloudFormation服务,然后点击“创建堆栈”。
在“创建堆栈”页面,选择“上传模板文件”并选择litellm.yaml文件
现在监控堆栈是否成功创建。
2. 获取数据库URL:
堆栈创建完成后,获取数据库资源的DatabaseURL,复制此值
3. 连接到EC2实例并在EC2容器上部署litellm
从EC2控制台,连接到堆栈创建的实例(例如,使用SSH)。
运行以下命令,将<database_url>替换为步骤2中复制的值
docker run --name litellm-proxy \
-e DATABASE_URL=<database_url> \
-p 4000:4000 \
ghcr.io/berriai/litellm-database:main-latest
4. 访问应用程序:
容器运行后,你可以在浏览器中访问http://<ec2-public-ip>:4000来访问应用程序。
在Google Cloud Run上部署
编辑仓库中的
litellm_config.yaml文件以包含你的模型设置在Google Cloud Run上部署你分叉的github仓库
测试你部署的代理
假设所需密钥设置为环境变量
https://litellm-7yjrj3ha2q-uc.a.run.app是我们示例代理,请将其替换为你部署的cloud run应用
curl https://litellm-7yjrj3ha2q-uc.a.run.app/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "Say this is a test!"}],
"temperature": 0.7
}'
在Render上部署 https://render.com/
额外功能
使用docker compose运行
步骤1
- (推荐)使用项目根目录中提供的示例文件
docker-compose.yml。例如:https://github.com/BerriAI/litellm/blob/main/docker-compose.yml
以下是一个示例 docker-compose.yml 文件
version: "3.9"
services:
litellm:
build:
context: .
args:
target: runtime
image: ghcr.io/berriai/litellm:main-latest
ports:
- "4000:4000" # 将容器端口映射到主机,如有必要,更改主机端口
volumes:
- ./litellm-config.yaml:/app/config.yaml # 挂载本地配置文件
# 您可以根据需要更改端口或工作线程数量,或传递任何新的支持的CLI参数。确保此处传递的端口与上面在 `ports` 值中定义的容器端口匹配
command: [ "--config", "/app/config.yaml", "--port", "4000", "--num_workers", "8" ]
# ...其余的docker-compose配置(如果有)
步骤2
创建一个 litellm-config.yaml 文件,包含您的LiteLLM配置,相对于您的 docker-compose.yml 文件。
查看配置文档 这里
步骤3
运行命令 docker-compose up 或 docker compose up,根据您的docker安装情况。
使用
-d标志以分离模式(后台)运行容器,例如docker compose up -d
您的LiteLLM容器现在应该在定义的端口上运行,例如 4000。
基于IAM的RDS数据库认证
- 设置AWS环境变量
export AWS_WEB_IDENTITY_TOKEN='/path/to/token'
export AWS_ROLE_NAME='arn:aws:iam::123456789012:role/MyRole'
export AWS_SESSION_NAME='MySession'
- 添加RDS凭证到环境变量
export DATABASE_USER="db-user"
export DATABASE_PORT="5432"
export DATABASE_HOST="database-1-instance-1.cs1ksmwz2xt3.us-west-2.rds.amazonaws.com"
export DATABASE_NAME="database-1-instance-1"
export DATABASE_SCHEMA="schema-name" # 跳过以使用默认的 "public" 模式
- 使用iam+rds运行代理
litellm --config /path/to/config.yaml --iam_token_db_auth