安装部署

用户可以在 Windows、MacOS、Linux 平台部署 KAT。KAT 的三个组件可以作为整体进行部署,也可以分别进行部署。本文档介绍如何使用 Docker Compose 整体部署 KAT。

前提条件

  • 安装open in new window Docker Compose。

  • 联系open in new window KaiwuDB 技术支持人员,为用户申请 KaiwuDB 知识库令牌。

  • KAT 默认使用以下端口。确保目标机器的以下端口没有被占用且没有被防火墙拦截。如需使用其他端口,可在安装部署过程中进行修改。

    • 8000:KWDB Agent Server API 服务端口。
    • 8123:KWDB Agent Server Copilot 服务的端口。
    • 3000:KWDB Agent UI 的端口。
  • 安装用户为 root 用户。root 用户在进行部署时无需输入密码。

  • 创建 KAT 数据库文件,持久化存储 KAT 数据。

    touch katserver.db
    
  • (可选)联系open in new window KaiwuDB 技术支持人员,获取 KWDB Agent Server 镜像。

  • (可选)联系open in new window KaiwuDB 技术支持人员,获取 KWDB Agent UI 镜像。

  • (可选)如需以安全模式连接 KaiwuDB 数据库,用户需要生成 CA 证书和密钥、客户端证书和密钥、节点证书和密钥。有关详细信息,参见 kwdb cert 命令参考

步骤

如需使用 YAML 文件部署 KAT,遵循以下步骤。

  1. 创建一个目录。然后在该目录下创建 docker-compose.yml 配置文件并配置相关参数。

    配置文件示例:

    version: "3.9"
    services:
      kat-server:
        image: "$kat-server"
        container_name: kat-server
        restart: unless-stopped
        environment:
          LOG_LEVEL: "your_log_level"
          DATABASE_URL: "your_kat_database_url"
          LANGCHAIN_TRACING: "false"
          KNOWLEDGE_API_URL: "your_knowledge_api_url"
          AUTH_TOKEN: "your_token"
        ports:
          - "8000:8000"
          - "8123:8123"
        volumes:
          - /your/local/path/katserver.db:/app/katserver.db
          - /your/local/path/certs:/app/certs
          - /your/local/path/kwdb-mcp-server:/user/local/bin/kwdb-mcp-server # (可选)挂载 KWDB MCP Server 二进制安装包。
        command: ["/app/entrypoint.sh"]
    
      kat-ui:
        image: "$kat-ui"
        container_name: kat-ui
        restart: unless-stopped
        environment:
          COPILOT_URL: http://kat-server:8123
          BACKEND_URL: http://kat-server:8000
        ports:
          - "3000:3000"
    

    参数说明:

    • r.restart:KWDB Agent Server 的重启方式。

    • kat-server.environment:KWDB Agent Server 支持的环境变量。用户可根据实际环境按需修改以下环境变量。

      • LOG_LEVEL:日志级别,支持设置为 INFONOTSETDEBUGWARNINGERRORCRITICAL 选项。有关详细信息,参见 Python 官方文档open in new window
      • DATABASE_URL:KAT 数据库的路径。推荐使用 sqlite+aiosqlite:////app/katserver.db。该参数取值,需要与 KAT 数据库文件挂载目录保持一致。
      • LANGCHAIN_TRACING:配置是否开启 LangChain 链路追踪。支持设置为 truefalse
      • KNOWLEDGE_API_URL:KaiwuDB 知识库的 API 地址,默认设置为 http://117.73.9.174:8001/proxy/knowledge
      • AUTH_TOKEN:KaiwuDB 知识库令牌。
    • kat-server.ports:配置 KWDB Agent Server 端口映射。KWDB Agent Server 默认使用以下端口。用户可根据实际环境按需修改端口配置。

      • 8000:KWDB Agent Server API 服务端口。
      • 8123:KWDB Agent Server Copilot 服务的端口。
    • kat-server.volumns:挂载数据。用户可以按需挂载 KAT 数据库文件、安全证书和 KWDB MCP Server 二进制安装包。

      说明

      • 如需挂载 KAT 数据文件,该参数取值需要与 KAT 数据库的路径保持一致。
      • 如果 KWDB MCP Server 二进制安装包已内置于 KWDB Agent Server 镜像,则无需挂载。
    • kat-server.command:容器启动后,默认执行的命令。

    • kat-ui.image:KWDB Agent UI 的镜像名称。

    • kat-ui.container_name:自定义 KWDB Agent UI 的容器名称。

    • kat-ui.restart:KWDB Agent UI 的重启方式。

    • kat-ui.environment:KWDB Agent UI 支持的环境变量。用户可根据实际环境按需修改以下环境变量。

      • COPILOT_URL:KWDB Agent Server Copilot 服务的地址。
      • BACKEND_URL:KWDB Agent Server API 服务的地址。
    • kat-ui.ports:配置 KWDB Agent UI 的端口映射。默认情况下,KWDB Agent UI 端口号是 3000。用户可根据实际环境按需修改端口配置。

  2. 启动 KAT。

    docker-compose up -d
    

    成功启动 KAT 后,用户即可通过 http://localhost:3000/ 访问 KAT。

  3. (可选)停止 KAT。

    docker-compose down