From 7590012a03998278cc66fc14bf7506f44124e68c Mon Sep 17 00:00:00 2001 From: Yuneng Jiang Date: Mon, 21 Sep 2026 14:12:55 -0700 Subject: [PATCH] feat(docker): add a quickstart compose file served from the product repo The docs quickstart pipes a compose file hosted on the docs site straight into `docker compose -f -`. That puts the content users execute in the docs repo rather than here, and nothing lands on disk for them to read first. Move the two-service stack (gateway + Postgres) into docker/ so it ships and is reviewed alongside the code it starts, and pin the image to main-stable instead of latest. The docs change to download-then-run follows separately. Verified: `docker compose up -d` brings the stack healthy, /health/liveliness returns 200, /v1/models returns 200 with the placeholder key and 401 without, and /ui/ serves. --- docker/README.md | 10 +++++++ docker/docker-compose.quickstart.yml | 40 ++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 docker/docker-compose.quickstart.yml diff --git a/docker/README.md b/docker/README.md index 26d8c9a37b0..787866ce35a 100644 --- a/docker/README.md +++ b/docker/README.md @@ -2,6 +2,16 @@ This guide provides instructions for building and running the LiteLLM application using Docker and Docker Compose. +> **Just want to run LiteLLM?** This guide builds from source. To run the published +> image instead, use `docker-compose.quickstart.yml` in this directory — the +> two-service stack (gateway + Postgres) that the +> [Docker quickstart](https://docs.litellm.ai/docs/proxy/docker_quick_start) documents: +> +> ```bash +> curl -sSLO https://github.com/BerriAI/litellm/raw/main/docker/docker-compose.quickstart.yml +> docker compose -f docker-compose.quickstart.yml up -d +> ``` + ## Prerequisites - Docker diff --git a/docker/docker-compose.quickstart.yml b/docker/docker-compose.quickstart.yml new file mode 100644 index 00000000000..7c849c759f0 --- /dev/null +++ b/docker/docker-compose.quickstart.yml @@ -0,0 +1,40 @@ +# LiteLLM quickstart stack: the gateway plus a Postgres database that stores +# models, virtual keys, and spend logs. Used by +# https://docs.litellm.ai/docs/proxy/docker_quick_start +# +# curl -sSLO https://github.com/BerriAI/litellm/raw/main/docker/docker-compose.quickstart.yml +# docker compose -f docker-compose.quickstart.yml up -d +# +# The credentials below are placeholders for local evaluation. Before any real +# use, set LITELLM_MASTER_KEY and LITELLM_SALT_KEY to long random values and +# pin the image to a specific release tag. +services: + litellm: + image: docker.litellm.ai/berriai/litellm:main-stable + ports: + - "4000:4000" + environment: + LITELLM_MASTER_KEY: sk-1234 + LITELLM_SALT_KEY: sk-XXXXXXXXXXXXXXXX + DATABASE_URL: postgresql://litellm:litellm@db:5432/litellm + STORE_MODEL_IN_DB: "True" + depends_on: + db: + condition: service_healthy + + db: + image: postgres:16 + environment: + POSTGRES_USER: litellm + POSTGRES_PASSWORD: litellm + POSTGRES_DB: litellm + healthcheck: + test: ["CMD-SHELL", "pg_isready -U litellm"] + interval: 5s + timeout: 5s + retries: 10 + volumes: + - postgres_data:/var/lib/postgresql/data + +volumes: + postgres_data: