Docker 部署

使用 Docker 运行 Letta 服务器

本指南介绍如何使用 Docker 部署和运行 Letta 服务器。这使您可以完全自托管 Letta,而不依赖 Letta 云服务。

先决条件

快速开始

使用 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_URIPostgreSQL 连接字符串
LETTA_OPENAI_API_KEYOpenAI API 密钥如果使用 OpenAI 模型
LETTA_ANTHROPIC_API_KEYAnthropic 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 连接字符串
  • 检查数据库是否正在运行
  • 验证用户权限

下一步