services: langfuse-server: image: langfuse/langfuse:2 depends_on: db: condition: service_healthy ports: - "3000:3000" environment: - DATABASE_URL=postgresql://postgres:postgres@db:5432/postgres - NEXTAUTH_SECRET=mysecret - SALT=mysalt - ENCRYPTION_KEY=0000000000000000000000000000000000000000000000000000000000000000 # generate via `openssl rand -hex 32` - NEXTAUTH_URL=http://localhost:3000 - TELEMETRY_ENABLED=${TELEMETRY_ENABLED:-true} - LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES=${LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES:-false} - LANGFUSE_INIT_ORG_ID=${LANGFUSE_INIT_ORG_ID:-} - LANGFUSE_INIT_ORG_NAME=${LANGFUSE_INIT_ORG_NAME:-} - LANGFUSE_INIT_PROJECT_ID=${LANGFUSE_INIT_PROJECT_ID:-} - LANGFUSE_INIT_PROJECT_NAME=${LANGFUSE_INIT_PROJECT_NAME:-} - LANGFUSE_INIT_PROJECT_PUBLIC_KEY=${LANGFUSE_INIT_PROJECT_PUBLIC_KEY:-} - LANGFUSE_INIT_PROJECT_SECRET_KEY=${LANGFUSE_INIT_PROJECT_SECRET_KEY:-} - LANGFUSE_INIT_USER_EMAIL=${LANGFUSE_INIT_USER_EMAIL:-} - LANGFUSE_INIT_USER_NAME=${LANGFUSE_INIT_USER_NAME:-} - LANGFUSE_INIT_USER_PASSWORD=${LANGFUSE_INIT_USER_PASSWORD:-} db: image: postgres restart: always healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 3s timeout: 3s retries: 10 environment: - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres - POSTGRES_DB=postgres ports: - 5432:5432 volumes: - database_data:/var/lib/postgresql/data volumes: database_data: driver: local