有关自托管部署选项的概述,请参阅自托管选项。
前提条件
- 使用 LangGraph CLI 在本地测试您的应用程序。
-
使用 LangGraph CLI 构建 Docker 镜像(即
langgraph build)。 - 数据平面部署需要以下环境变量。
-
REDIS_URI:Redis 实例的连接详情。Redis 将用作发布-订阅代理,以实现从后台运行中流式传输实时输出。REDIS_URI的值必须是有效的 Redis 连接 URI。共享 Redis 实例 多个自托管部署可以共享同一个 Redis 实例。例如,对于Deployment A,REDIS_URI可以设置为redis://<hostname_1>:<port>/1,对于Deployment B,REDIS_URI可以设置为redis://<hostname_1>:<port>/2。1和2是同一实例内的不同数据库编号,但<hostname_1>是共享的。不能为不同的部署使用相同的数据库编号。 -
DATABASE_URI:Postgres 连接详情。Postgres 将用于存储助手、线程、运行,持久化线程状态和长期记忆,并以“恰好一次”语义管理后台任务队列的状态。DATABASE_URI的值必须是有效的 Postgres 连接 URI。共享 Postgres 实例 多个自托管部署可以共享同一个 Postgres 实例。例如,对于Deployment A,DATABASE_URI可以设置为postgres://<user>:<password>@/<database_name_1>?host=<hostname_1>,对于Deployment B,DATABASE_URI可以设置为postgres://<user>:<password>@/<database_name_2>?host=<hostname_1>。<database_name_1>和database_name_2是同一实例内的不同数据库,但<hostname_1>是共享的。不能为不同的部署使用相同的数据库。 -
LANGSMITH_API_KEY:LangSmith API 密钥。 -
LANGGRAPH_CLOUD_LICENSE_KEY:LangSmith 许可证密钥。这将用于在服务器启动时进行一次性身份验证。 -
LANGSMITH_ENDPOINT:要将跟踪发送到自托管 LangSmith 实例,请将LANGSMITH_ENDPOINT设置为自托管 LangSmith 实例的主机名。 -
从您的网络出站到
https://beacon.langchain.com。如果不在气隙模式下运行,这是许可证验证和使用情况报告所必需的。有关更多详细信息,请参阅出站文档。
Kubernetes
使用此 Helm chart 将 Agent 服务器部署到 Kubernetes 集群。这是生产环境独立服务器部署的推荐设置。 Helm chart (v0.2.6+) 支持使用捆绑实例(开发/测试)或外部部署(生产)进行 MongoDB 检查点存储。在您的 values 文件中设置mongo.enabled: true。有关完整的配置详细信息,请参阅配置检查点后端。
Docker
此docker 示例适用于本地开发和测试。
运行以下 docker 命令:
-
您需要将
my-image替换为您在前提条件步骤中构建的镜像名称(来自langgraph build), 并且应为REDIS_URI、DATABASE_URI和LANGSMITH_API_KEY提供适当的值。 - 如果您的应用程序需要额外的环境变量,您可以以类似的方式传递它们。
Docker Compose
此 Docker Compose 示例适用于本地开发和测试。 使用以下 Docker Compose 文件:docker compose up。
使用 MongoDB 检查点存储
使用 MongoDB 检查点存储
要将检查点存储在 MongoDB 中而不是 PostgreSQL 中,请添加一个 MongoDB 服务并配置检查点后端。在您的 有关 MongoDB 配置选项的更多详细信息,请参阅配置检查点后端。
langgraph.json 中将后端设置为 "mongo",或使用 LS_DEFAULT_CHECKPOINTER_BACKEND 环境变量。所有其他服务器数据仍需要 PostgreSQL。8123 上启动一个 Agent 服务器(如果需要,可以更改 langgraph-api 中的端口映射)。测试应用程序是否健康:
将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时答案。

