agenticai / docker-compose.yml
suryanshp1
feat: guardrail fix
5ab7b68
version: '3.8'
services:
# Langfuse Database
langfuse-db:
image: postgres:15
container_name: langfuse-postgres
# Load environment variables from .env (see .env.example)
env_file:
- .env
environment:
POSTGRES_DB: ${POSTGRES_DB:-langfuse}
POSTGRES_USER: ${POSTGRES_USER:-langfuse}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-langfuse_password}
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
volumes:
- langfuse_db_data:/var/lib/postgresql/data
networks:
- langgraph-network
restart: unless-stopped
# Langfuse Server
langfuse-server:
image: langfuse/langfuse:2
container_name: langfuse-server
depends_on:
- langfuse-db
ports:
- "3000:3000"
# Load environment variables from .env (see .env.example)
env_file:
- .env
environment:
# Compose the DATABASE_URL from postgres env vars to avoid hard-coding credentials
DATABASE_URL: ${DATABASE_URL:-postgresql://${POSTGRES_USER:-langfuse}:${POSTGRES_PASSWORD:-langfuse_password}@langfuse-db:${POSTGRES_PORT:-5432}/${POSTGRES_DB:-langfuse}}
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET:-mysecret}
SALT: ${SALT:-mysalt}
NEXTAUTH_URL: ${NEXTAUTH_URL:-http://localhost:3000}
TELEMETRY_ENABLED: ${TELEMETRY_ENABLED:-true}
LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES: ${LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES:-false}
networks:
- langgraph-network
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:3000/api/public/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
# Main Application
langgraph-agenticai:
build:
context: .
dockerfile: Dockerfile
args:
GUARDRAILS_API_KEY: ${GUARDRAILS_API_KEY:-}
container_name: langgraph-agenticai-app
ports:
- "8501:8501"
# Load environment variables from .env (see .env.example)
env_file:
- .env
environment:
GROQ_API_KEY: ${GROQ_API_KEY:-}
TAVILY_API_KEY: ${TAVILY_API_KEY:-}
LANGFUSE_SECRET_KEY: ${LANGFUSE_SECRET_KEY:-}
LANGFUSE_PUBLIC_KEY: ${LANGFUSE_PUBLIC_KEY:-}
LANGFUSE_HOST: ${LANGFUSE_HOST:-http://langfuse-server:3000}
STREAMLIT_ENV: ${STREAMLIT_ENV:-development}
GUARDRAILS_ENABLED: ${GUARDRAILS_ENABLED:-true}
MEMORI_DB: ${MEMORI_DB:-sqlite:///langgraphagenticai_memory.db}
volumes:
- ./src:/app/src
- ./app.py:/app/app.py
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:8501/_stcore/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- langgraph-network
volumes:
langfuse_db_data:
networks:
langgraph-network:
driver: bridge