Docker 部署
使用 Docker 运行 Letta 服务器
本指南介绍如何使用 Docker 部署和运行 Letta 服务器。这使您可以完全自托管 Letta,而不依赖 Letta 云服务。
先决条件
- Docker 已安装
- Docker Compose 已安装(可选,推荐)
快速开始
使用 Docker Compose(推荐)
创建 docker-compose.yml 文件:
version: '3.8'
services:
letta:
image: letta/letta:latest
ports:
- "8283:8283"
environment:
- LETTA_PG_URI=postgresql://letta:letta@postgres:5432/letta
- LETTA_OPENAI_API_KEY=${OPENAI_API_KEY}
depends_on:
- postgres
postgres:
image: postgres:15
environment:
- POSTGRES_USER=letta
- POSTGRES_PASSWORD=letta
- POSTGRES_DB=letta
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
运行:
docker-compose up -d
使用 Docker
# 拉取镜像
docker pull letta/letta:latest
# 运行容器
docker run -d \
--name letta-server \
-p 8283:8283 \
-e LETTA_PG_URI=postgresql://letta:letta@localhost:5432/letta \
-e LETTA_OPENAI_API_KEY=your-api-key \
letta/letta:latest
环境变量
| 变量 | 描述 | 必需 |
|---|---|---|
LETTA_PG_URI | PostgreSQL 连接字符串 | 是 |
LETTA_OPENAI_API_KEY | OpenAI API 密钥 | 如果使用 OpenAI 模型 |
LETTA_ANTHROPIC_API_KEY | Anthropic API 密钥 | 如果使用 Claude 模型 |
LETTA_SERVER_PORT | 服务器端口(默认:8283) | 否 |
连接 Letta Code
要让 Letta Code 连接到您的 Docker 服务器:
# 设置基础 URL
export LETTA_BASE_URL=http://localhost:8283
# 运行 Letta Code
letta
或者在配置中设置:
# ~/.letta/settings.json
{
"baseUrl": "http://localhost:8283"
}
数据持久化
为确保数据在容器重启之间持久化:
- 使用 Docker volumes 存储数据库数据
- 使用外部 PostgreSQL 数据库进行生产部署
生产部署
对于生产环境:
- 使用外部 PostgreSQL 数据库
- 配置适当的备份策略
- 设置 SSL/TLS
- 配置身份验证和授权
故障排除
连接被拒绝
如果无法连接到服务器:
- 检查容器是否正在运行:
docker ps - 检查日志:
docker logs letta-server - 验证端口映射
数据库错误
如果遇到数据库错误:
- 验证 PostgreSQL 连接字符串
- 检查数据库是否正在运行
- 验证用户权限