Initial commit: Any-LLM Gateway with Laravel Admin Interface

- Any-LLM Gateway setup with Docker Compose
- Laravel 11 admin interface with Livewire
- Dashboard with usage statistics and charts
- Gateway Users management with budget tracking
- API Keys management with revocation
- Budget templates with assignment
- Usage Logs with filtering and CSV export
- Model Pricing management with calculator
- PostgreSQL database integration
- Complete authentication system for admins
This commit is contained in:
wtrinkl
2025-11-16 12:38:05 +01:00
commit b1363aeab9
148 changed files with 23995 additions and 0 deletions

98
docker-compose.yml Normal file
View File

@@ -0,0 +1,98 @@
services:
gateway:
# if pulling from ghcr.io, use the following instead, and comment out the build section:
image: ghcr.io/mozilla-ai/any-llm/gateway:latest
# build:
# context: ..
# dockerfile: docker/Dockerfile
# args:
# VERSION: ${VERSION:-0.0.0+local}
# If you want to use a different port, change it here and in the config.yml file.
ports:
- "8000:8000"
volumes:
- ./config.yml:/app/config.yml
command: ["any-llm-gateway", "serve", "--config", "/app/config.yml"]
depends_on:
postgres:
condition: service_healthy
restart: unless-stopped
networks:
- any-llm-network
postgres:
image: postgres:16-alpine
environment:
- POSTGRES_USER=gateway
- POSTGRES_PASSWORD=gateway
- POSTGRES_DB=gateway
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U gateway"]
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped
networks:
- any-llm-network
web:
image: nginx:alpine
ports:
- "8080:80"
volumes:
- ./web:/usr/share/nginx/html:ro
- ./web/default.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- gateway
restart: unless-stopped
networks:
- any-llm-network
# Laravel Admin Panel
laravel:
build:
context: ./laravel
dockerfile: Dockerfile
ports:
- "80:80"
volumes:
- ./laravel-app:/var/www
environment:
- APP_ENV=local
- APP_DEBUG=true
- APP_KEY=base64:dXFQ1q9f0T9fNZGde+9h/JOsaBPPmGv5qzA87b9FQnQ=
- DB_CONNECTION=pgsql
- DB_HOST=postgres
- DB_PORT=5432
- DB_DATABASE=gateway
- DB_USERNAME=gateway
- DB_PASSWORD=gateway
depends_on:
postgres:
condition: service_healthy
restart: unless-stopped
networks:
- any-llm-network
# Adminer - Database Management UI
adminer:
image: adminer:latest
ports:
- "8081:8080"
environment:
- ADMINER_DEFAULT_SERVER=postgres
- ADMINER_DESIGN=dracula
depends_on:
- postgres
restart: unless-stopped
networks:
- any-llm-network
volumes:
postgres_data:
networks:
any-llm-network:
driver: bridge