LangFuse 安装说明(Docker)
Langfuse Server 包括 API 和 Web UI,是开源的,可以使用 Docker 自托管。
详细的组件和架构图可以参考 CONTRIBUTING.md 。
官方文档:https://langfuse.com/docs/deployment/self-host
安装要求:Postgres 数据库
Langfuse 需要一个持久的 Postgres 数据库来存储其状态。您可以使用 AWS、Azure 或 GCP 上的托管服务,也可以自行托管。数据库准备就绪后,请将连接字符串放在手边。
部署应用程序
将应用程序容器部署到您的基础架构。您可以使用 AWS ECS、Azure 容器实例或 GCP Cloud Run 等托管服务,也可以自行托管。
- 在容器启动期间,所有数据库迁移将自动应用。
拉取镜像
docker pull ghcr.io/langfuse/langfuse:2
# 最新版本
docker pull ghcr.io/langfuse/langfuse:latest启动镜像
docker run --name langfuse \
-e DATABASE_URL=postgresql://<user>:<password>@<host>:<port>/<dbname> \
-e NEXTAUTH_URL=http://localhost:3000 \
-e NEXTAUTH_SECRET=mysecret \
-e SALT=mysalt \
-p 3000:3000 \
-a STDOUT \
ghcr.io/langfuse/langfuse:latest配置环境变量
Langfuse 可以使用环境变量(.env.prod.example)。有些是强制性的,如下表所定义:
| 变量名 | 必需/默认 | 描述 |
|---|---|---|
DATABASE_URL |
必需的 | Postgres 数据库的连接字符串。您还可以使用 DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD 和 DATABASE_NAME 来代替 DATABASE_URL。 |
DIRECT_URL |
DATABASE_URL |
用于数据库迁移的 Postgres 数据库的连接字符串。如果您想使用不同的用户进行迁移或使用连接池,请使用此选项 DATABASE_URL。对于大型部署,请为数据库用户配置较长的超时,因为迁移可能需要一段时间才能完成。 |
SHADOW_DATABASE_URL |
如果您的数据库用户缺乏 CREATE DATABASE 权限,您必须创建影子数据库并配置 “SHADOW_DATABASE_URL”。如果您使用云数据库,通常会出现这种情况。请参阅 Prisma 文档 获取详细说明。 |
|
NEXTAUTH_URL |
必需的 | 您的部署的 URL,例如 https://yourdomain.com 或 http://localhost:3000。通过 OAUTH 成功进行身份验证所必需的。 |
NEXTAUTH_SECRET |
必需的 | 用于验证登录会话 cookie,使用 生成至少具有 256 熵的秘密 openssl rand -base64 32。 |
SALT |
必需的 | 用于对哈希 API 密钥加盐,使用 生成至少具有 256 熵的秘密 openssl rand -base64 32。 |
PORT |
3000 |
服务器监听的端口。 |
HOSTNAME |
localhost |
在某些环境中,需要将其设置 0.0.0.0 为可从容器外部访问(例如 Google Cloud Run)。 |
NEXT_PUBLIC_SIGN_UP_DISABLED |
false |
设置 true 为阻止所有新注册。只有现有用户可以登录。 |
AUTH_DOMAINS_WITH_SSO_ENFORCEMENT |
仅允许使用 SSO 登录的以逗号分隔的域列表。这些域禁用电子邮件/密码登录。例如 domain1.com,domain2.com |
|
AUTH_DISABLE_USERNAME_PASSWORD |
false |
设置 true 为禁用所有用户的电子邮件/密码签名。仅 OAuth/SSO 提供商可用于登录。 |
LANGFUSE_DEFAULT_PROJECT_ID |
为新用户配置可选的默认项目。当用户创建帐户时,他们将被自动添加到该项目中。 | |
LANGFUSE_DEFAULT_PROJECT_ROLE |
VIEWER |
用户在默认项目中的角色(如果设置)。可能的值为 ADMIN, MEMBER, VIEWER。有关详细信息,请参阅 项目角色。 |
SMTP_CONNECTION_URL |
为事务电子邮件配置可选的 SMTP 服务器连接。 | |
EMAIL_FROM_ADDRESS |
配置交易电子邮件的发件人地址。SMTP_CONNECTION_URL 如果设置则为必填项。 |
|
S3_ENDPOINT, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_BUCKET_NAME, S3_REGION |
可选的 S3 配置,可从 UI 进行大量导出。 | |
DB_EXPORT_PAGE_SIZE |
1000 |
用于流式导出到 S3 的可选页面大小,以避免内存问题。如果需要优化性能,可以调整页面大小。 |
作者:Jeebiz 创建时间:2024-03-20 13:13
最后编辑:Jeebiz 更新时间:2025-10-24 00:40
最后编辑:Jeebiz 更新时间:2025-10-24 00:40