Add .env file for environment variables and update docker-compose.yml to use it

- Introduced a new .env file containing sensitive environment variables and configuration settings.
- Updated docker-compose.yml to reference the new .env file for environment variables instead of stack.env.
- Adjusted volume paths and network configurations for improved clarity and organization.
- Commented out legacy model configurations in model_config.yaml for future reference.
This commit is contained in:
2026-01-13 23:43:41 +00:00
parent 2dd2525621
commit ecf85dce4a
3 changed files with 91 additions and 84 deletions

View File

@@ -2,42 +2,44 @@ version: '3.2'
services:
litellm:
container_name: litellm
image: litellm/litellm:latest
restart: unless-stopped
env_file:
- stack.env
- .env
volumes:
- /home/trav/dkr/litellm/config/config.yaml:/app/config.yaml
- /home/trav/dkr/litellm/config/model_config.yaml:/app/model_config.yaml
- /home/trav/dkr/litellm/config/litellm_settings.yaml:/app/litellm_settings.yaml
- /home/trav/dkr/litellm/config/router_settings.yaml:/app/router_settings.yaml
- /home/trav/dkr/litellm/config/general_settings.yaml:/app/general_settings.yaml
# - ./config/config.yaml:/app/config.yaml
# - ./config/model_config.yaml:/app/model_config.yaml
# - ./config/litellm_settings.yaml:/app/litellm_settings.yaml
# - ./config/router_settings.yaml:/app/router_settings.yaml
# - ./config/general_settings.yaml:/app/general_settings.yaml
# - /home/trav/dkr/litellm/config/config.yaml:/app/config.yaml
# - /home/trav/dkr/litellm/config/model_config.yaml:/app/model_config.yaml
# - /home/trav/dkr/litellm/config/litellm_settings.yaml:/app/litellm_settings.yaml
# - /home/trav/dkr/litellm/config/router_settings.yaml:/app/router_settings.yaml
# - /home/trav/dkr/litellm/config/general_settings.yaml:/app/general_settings.yaml
- ./config/config.yaml:/app/config.yaml
- ./config/model_config.yaml:/app/model_config.yaml
- ./config/litellm_settings.yaml:/app/litellm_settings.yaml
- ./config/router_settings.yaml:/app/router_settings.yaml
- ./config/general_settings.yaml:/app/general_settings.yaml
command:
- "--config=/app/config.yaml"
# environment:
# DATABASE_URL: ${DATABASE_URL}
# LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY}
# LITELLM_SALT_KEY: ${LITELLM_SALT_KEY}
# UI_USERNAME: ${UI_USERNAME}
# UI_PASSWORD: ${UI_PASSWORD}
# STORE_MODEL_IN_DB: "True"
# # Provider Keys
# OPENAI_API_KEY: ${OPENAI_API_KEY}
# COHERE_API_KEY: ${COHERE_API_KEY}
# ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY}
# LITELLM_LOG: ${LITELLM_LOG:-WARN}
# LANGFUSE_PUBLIC_KEY: ${LANGFUSE_PUBLIC_KEY}
# LANGFUSE_SECRET_KEY: ${LANGFUSE_SECRET_KEY}
# LANGFUSE_OTEL_HOST: ${LANGFUSE_OTEL_HOST}
environment:
DATABASE_URL: ${DATABASE_URL}
LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY}
LITELLM_SALT_KEY: ${LITELLM_SALT_KEY}
UI_USERNAME: ${UI_USERNAME}
UI_PASSWORD: ${UI_PASSWORD}
STORE_MODEL_IN_DB: "True"
# Provider Keys
OPENAI_API_KEY: ${OPENAI_API_KEY}
COHERE_API_KEY: ${COHERE_API_KEY}
ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY}
LITELLM_LOG: ${LITELLM_LOG:-WARN}
LANGFUSE_PUBLIC_KEY: ${LANGFUSE_PUBLIC_KEY}
LANGFUSE_SECRET_KEY: ${LANGFUSE_SECRET_KEY}
LANGFUSE_BASE_URL: ${LANGFUSE_OTEL_HOST}
LANGFUSE_OTEL_HOST: ${LANGFUSE_BASE_URL}
USE_PRISMA_MIGRATE: ${USE_PRISMA_MIGRATE}
networks:
- net
- badge-net
- public
- llm-net
- proxy-little
expose:
- 4000
healthcheck:
@@ -47,32 +49,10 @@ services:
interval: 30s
timeout: 10s
retries: 3
deploy:
replicas: 1
update_config:
parallelism: 1
delay: 10s
failure_action: rollback
placement:
constraints:
- node.hostname == little
labels:
- "traefik.enable=true"
- "traefik.swarm.network=public"
- "traefik.http.routers.litellm.entrypoints=web"
- "traefik.http.routers.litellm.rule=Host(`llm.lab`) || Host(`llm.toy`)"
- "traefik.http.routers.litellm.service=litellm"
- "traefik.http.services.litellm.loadbalancer.server.port=4000"
# Health check using unauthenticated endpoint
- "traefik.http.services.litellm.loadbalancer.healthcheck.path=/health/liveliness"
- "traefik.http.services.litellm.loadbalancer.healthcheck.interval=30s"
- "traefik.http.services.litellm.loadbalancer.healthcheck.timeout=5s"
networks:
net:
driver: overlay
attachable: true
public:
external: true
badge-net:
external: true
llm-net:
driver: bridge
name: llm-net
proxy-little:
external: true