首页
/ ElizaOS项目中的TEE模式Docker Compose部署指南

ElizaOS项目中的TEE模式Docker Compose部署指南

2025-07-06 00:59:20作者:卓炯娓

前言

ElizaOS是一个集成了多种AI服务和区块链功能的创新性操作系统项目。本文将深入解析项目中的tee-docker-compose.yaml文件,帮助开发者理解如何部署ElizaOS的TEE(可信执行环境)模式。

核心服务架构

ElizaOS的TEE模式部署主要包含两个核心服务:

  1. PostgreSQL数据库服务:使用pgvector扩展支持向量搜索功能
  2. ElizaOS主服务:运行在TEE环境中的核心应用

PostgreSQL服务配置详解

PostgreSQL服务使用了ankane/pgvector镜像,这是一个集成了向量搜索功能的PostgreSQL版本,非常适合AI应用场景:

postgres:
  image: ankane/pgvector:latest
  environment:
    - POSTGRES_PASSWORD=postgres
    - POSTGRES_USER=postgres
    - POSTGRES_DB=eliza
    - PGDATA=/var/lib/postgresql/data/pgdata
  volumes:
    - postgres-data:/var/lib/postgresql/data:rw
  ports:
    - '127.0.0.1:5432:5432'

关键配置说明:

  • 使用命名卷postgres-data持久化数据库数据
  • 仅绑定到本地回环地址(127.0.0.1),确保数据库安全
  • 配置了健康检查,确保服务完全启动后才继续依赖它的服务

ElizaOS主服务配置

ElizaOS主服务配置体现了项目对多种AI服务和区块链功能的集成:

elizaos:
  image: ${DOCKER_IMAGE_FULL_NAME}
  command: bun run start
  environment:
    - OPENAI_API_KEY=${OPENAI_API_KEY}
    - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
    - POSTGRES_URL=${POSTGRES_URL}
    - TEE_MODE=${TEE_MODE}
    - WALLET_SECRET_SALT=${WALLET_SECRET_SALT}
    - TEE_VENDOR=${TEE_VENDOR}
  ports:
    - '3000:3000'
    - '50000-50100:50000-50100/udp'

关键特性:

  1. 多AI服务集成:支持OpenAI、Anthropic等多种AI服务API
  2. TEE支持:通过TEE_MODE和TEE_VENDOR环境变量配置可信执行环境
  3. 区块链功能:包含EVM_CHAINS等区块链相关配置
  4. 多媒体支持:通过ELEVENLABS_API_KEY等配置语音合成功能

网络与存储设计

项目采用桥接网络模式,确保服务间隔离与通信:

networks:
  eliza-network:
    driver: bridge

volumes:
  postgres-data:
  • 自定义桥接网络eliza-network连接所有服务
  • 专用卷postgres-data确保数据库持久化

部署实践建议

  1. 环境变量准备:部署前需准备好所有必要的环境变量,特别是各种API密钥
  2. TEE配置:根据实际硬件选择适当的TEE_VENDOR并正确配置
  3. 端口管理:注意UDP端口50000-50100范围较大,确保主机端口可用
  4. 安全考虑:数据库仅暴露给本地网络,生产环境应考虑更严格的安全措施

常见问题排查

  1. 服务启动顺序:利用depends_on确保数据库健康后才启动主服务
  2. 健康检查:PostgreSQL的健康检查配置可帮助自动恢复
  3. 资源限制:生产环境应考虑添加资源限制(resources配置)

结语

ElizaOS的TEE模式Docker Compose配置展示了现代AI应用与区块链技术结合的典型架构。通过理解这份配置文件,开发者可以更好地部署和定制自己的ElizaOS实例,同时也能从中学习到如何设计类似的复杂系统架构。