Sign inSign up

n8500x/litellm-proxy

By n8500x

Updated 4 months ago

LiteLLM Proxy — Air-Gapped Production Image

Image
0

2.0K

n8500x/litellm-proxy repository overview

LiteLLM Proxy — Air-Gapped Production Image

OpenAI-compatible API proxy for routing requests to multiple LLM providers. Fully self-contained: every runtime binary, tokeniser encoding, and data file is baked in at build time. Safe to run behind a corporate firewall with no egress except to your configured LLM API endpoints.

Build

docker build -t litellm-proxy docker/litellm/

Run

docker run -p 4000:4000 \
  -e LITELLM_MASTER_KEY=sk-your-key \
  -e OPENAI_API_KEY=sk-... \
  -e ANTHROPIC_API_KEY=sk-... \
  -v $(pwd)/litellm_config.yaml:/app/config.yaml \
  litellm-proxy:latest

Environment Variables

VariableRequiredDescription
LITELLM_MASTER_KEYYesMaster API key for proxy authentication
OPENAI_API_KEYPer configOpenAI API key
ANTHROPIC_API_KEYPer configAnthropic API key
AZURE_API_BASEPer configAzure OpenAI endpoint
AZURE_API_KEYPer configAzure OpenAI key
DATABASE_URLNoPostgreSQL URL for persistent state
REDIS_HOST / REDIS_PORT / REDIS_PASSWORDNoRedis for caching

Endpoints

EndpointDescription
GET /healthHealth check (requires auth)
POST /v1/chat/completionsOpenAI-compatible chat completions
POST /v1/completionsOpenAI-compatible completions
POST /v1/embeddingsOpenAI-compatible embeddings
GET /v1/modelsList available models

Corporate CA Bundle

Mount your corporate root CA at /etc/ssl/certs/corporate-ca.crt or set:

-e SSL_CERT_FILE=/etc/ssl/certs/corporate-ca.crt
-e REQUESTS_CA_BUNDLE=/etc/ssl/certs/corporate-ca.crt
-e NODE_EXTRA_CA_CERTS=/etc/ssl/certs/corporate-ca.crt

Configuration

The default config is at /app/config.yaml inside the image. Override it with a volume mount or Helm configmap. See litellm_config.yaml for the full example with all supported providers.

Helm

Extract the bundled Helm chart:

docker cp $(docker create --name tmp litellm-proxy):/chart ./chart && docker rm tmp

Embedded Artifacts (no runtime downloads)

  • Prisma engine binaries
  • tiktoken encodings (cl100k_base, o200k_base, p50k_base, p50k_edit, r50k_base, gpt2)
  • HuggingFace tokenizer cache
  • NLTK punkt tokenizer data

Tag summary

Content type

Image

Digest

sha256:3f163adc5

Size

168.2 MB

Last updated

4 months ago

docker pull n8500x/litellm-proxy