# Stack local de observabilidade com Langfuse. # A aplicacao principal continua sendo executada via `make agent`, `make bridge` e `make livekit`. x-langfuse-env: &langfuse-env NEXTAUTH_URL: http://localhost:3005 DATABASE_URL: postgresql://postgres:postgres@postgres:5432/postgres POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: postgres SALT: devsalt ENCRYPTION_KEY: b127cbb367ba27ddf3851750686b88a984acd818c0b8444e9370d11fb75fb7df NEXTAUTH_SECRET: devsecret TELEMETRY_ENABLED: "false" LANGFUSE_ENABLE_EXPERIMENTAL_FEATURES: "true" CLICKHOUSE_MIGRATION_URL: clickhouse://clickhouse:9000 CLICKHOUSE_URL: http://clickhouse:8123 CLICKHOUSE_USER: clickhouse CLICKHOUSE_PASSWORD: clickhouse CLICKHOUSE_CLUSTER_ENABLED: "false" REDIS_HOST: redis REDIS_PORT: 6379 REDIS_AUTH: devredis REDIS_TLS_ENABLED: "false" LANGFUSE_USE_AZURE_BLOB: "false" LANGFUSE_S3_EVENT_UPLOAD_BUCKET: langfuse LANGFUSE_S3_EVENT_UPLOAD_REGION: auto LANGFUSE_S3_EVENT_UPLOAD_ACCESS_KEY_ID: minio LANGFUSE_S3_EVENT_UPLOAD_SECRET_ACCESS_KEY: miniosecret LANGFUSE_S3_EVENT_UPLOAD_ENDPOINT: http://minio:9000 LANGFUSE_S3_EVENT_UPLOAD_FORCE_PATH_STYLE: "true" LANGFUSE_S3_EVENT_UPLOAD_PREFIX: events/ LANGFUSE_S3_MEDIA_UPLOAD_BUCKET: langfuse LANGFUSE_S3_MEDIA_UPLOAD_REGION: auto LANGFUSE_S3_MEDIA_UPLOAD_ACCESS_KEY_ID: minio LANGFUSE_S3_MEDIA_UPLOAD_SECRET_ACCESS_KEY: miniosecret LANGFUSE_S3_MEDIA_UPLOAD_ENDPOINT: http://minio:9000 LANGFUSE_S3_MEDIA_UPLOAD_FORCE_PATH_STYLE: "true" LANGFUSE_S3_MEDIA_UPLOAD_PREFIX: media/ LANGFUSE_S3_BATCH_EXPORT_ENABLED: "false" LANGFUSE_S3_BATCH_EXPORT_BUCKET: langfuse LANGFUSE_S3_BATCH_EXPORT_PREFIX: exports/ LANGFUSE_S3_BATCH_EXPORT_REGION: auto LANGFUSE_S3_BATCH_EXPORT_ENDPOINT: http://minio:9000 LANGFUSE_S3_BATCH_EXPORT_EXTERNAL_ENDPOINT: http://localhost:9090 LANGFUSE_S3_BATCH_EXPORT_ACCESS_KEY_ID: minio LANGFUSE_S3_BATCH_EXPORT_SECRET_ACCESS_KEY: miniosecret LANGFUSE_S3_BATCH_EXPORT_FORCE_PATH_STYLE: "true" x-langfuse-depends-on: &langfuse-depends-on postgres: condition: service_healthy redis: condition: service_healthy clickhouse: condition: service_healthy minio: condition: service_started services: langfuse-web: image: docker.io/langfuse/langfuse:3 restart: unless-stopped depends_on: *langfuse-depends-on ports: - "3005:3000" environment: <<: *langfuse-env langfuse-worker: image: docker.io/langfuse/langfuse-worker:3 restart: unless-stopped depends_on: *langfuse-depends-on environment: <<: *langfuse-env postgres: image: docker.io/postgres:17 restart: unless-stopped environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: postgres TZ: UTC PGTZ: UTC ports: - "127.0.0.1:5433:5432" volumes: - langfuse_postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 3s timeout: 3s retries: 20 redis: image: docker.io/redis:7 restart: unless-stopped command: - --requirepass - devredis - --maxmemory-policy - noeviction ports: - "127.0.0.1:6379:6379" healthcheck: test: ["CMD", "redis-cli", "-a", "devredis", "ping"] interval: 3s timeout: 10s retries: 20 clickhouse: image: docker.io/clickhouse/clickhouse-server restart: unless-stopped user: "101:101" environment: CLICKHOUSE_DB: default CLICKHOUSE_USER: clickhouse CLICKHOUSE_PASSWORD: clickhouse ports: - "127.0.0.1:8124:8123" - "127.0.0.1:9002:9000" volumes: - langfuse_clickhouse_data:/var/lib/clickhouse - langfuse_clickhouse_logs:/var/log/clickhouse-server healthcheck: test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:8123/ping || exit 1"] interval: 5s timeout: 5s retries: 20 start_period: 5s minio: image: minio/minio restart: unless-stopped entrypoint: sh command: -c 'mkdir -p /data/langfuse && minio server --address ":9000" --console-address ":9001" /data' environment: MINIO_ROOT_USER: minio MINIO_ROOT_PASSWORD: miniosecret ports: - "9090:9000" - "127.0.0.1:9091:9001" volumes: - langfuse_minio_data:/data volumes: langfuse_postgres_data: langfuse_clickhouse_data: langfuse_clickhouse_logs: langfuse_minio_data: