Sign inSign up

ocpub/oc9-maxkb

By ocpub

Updated 4 months ago

Image
0

264

ocpub/oc9-maxkb repository overview

MaxKB on OpenCloudOS 9

基本信息

  • 框架版本:v2.7.0
  • 基础镜像:opencloudos9-minimal:latest
  • Python 版本:3.11
  • Node.js 版本:24.x(仅构建时使用)
  • 框架类型:知识库问答平台(Django + Vue.js)
  • CUDA 版本:N/A(CPU 框架)

简介

MaxKB 是 1Panel 团队开发的开源知识库问答平台,基于大语言模型(LLM)和 RAG 技术,提供强大的知识库管理与智能问答能力。支持多种 LLM 接入(OpenAI、Anthropic、Ollama、DeepSeek 等),内置文档解析、向量检索、工作流编排等功能。

构建

docker build -t oc9-maxkb:2.7.0 frameworks/maxkb/2.7.0/

构建需要 ≥8GB 内存(PyTorch + LangChain 依赖较多)。

使用示例

MaxKB 需要配合以下外部服务一起部署:

服务说明
PostgreSQL主数据库(≥17,需安装 pgvector 扩展)
Redis缓存(≥7.0)
docker-compose 部署示例
services:
  maxkb:
    image: oc9-maxkb:2.7.0
    container_name: maxkb
    restart: always
    ports:
      - "8080:8080"
    volumes:
      - ./maxkb-data:/opt/maxkb
    environment:
      - MAXKB_DB_HOST=pgsql
      - MAXKB_DB_PORT=5432
      - MAXKB_DB_USER=root
      - MAXKB_DB_PASSWORD=Password123@postgres
      - MAXKB_DB_NAME=maxkb
      - MAXKB_REDIS_HOST=redis
      - MAXKB_REDIS_PORT=6379
      - MAXKB_REDIS_PASSWORD=Password123@redis
      - MAXKB_EMBEDDING_MODEL_PATH=/opt/maxkb/model/embedding
      - MAXKB_SANDBOX=1
    depends_on:
      - pgsql
      - redis

  pgsql:
    image: pgvector/pgvector:0.8.0-pg17
    container_name: pgsql
    restart: always
    volumes:
      - ./pgsql-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=root
      - POSTGRES_PASSWORD=Password123@postgres
      - POSTGRES_DB=maxkb

  redis:
    image: redis:7.2-alpine
    container_name: redis
    restart: always
    volumes:
      - ./redis-data:/data
    command: redis-server --requirepass Password123@redis --appendonly yes

启动后访问 http://localhost:8080

主要环境变量

变量说明默认值
MAXKB_DB_HOSTPostgreSQL 主机地址127.0.0.1
MAXKB_DB_PORTPostgreSQL 端口5432
MAXKB_DB_USERPostgreSQL 用户名root
MAXKB_DB_PASSWORDPostgreSQL 密码Password123@postgres
MAXKB_DB_NAME数据库名maxkb
MAXKB_REDIS_HOSTRedis 主机地址127.0.0.1
MAXKB_REDIS_PORTRedis 端口6379
MAXKB_REDIS_PASSWORDRedis 密码Password123@redis
MAXKB_EMBEDDING_MODEL_PATHEmbedding 模型路径/opt/maxkb-app/model/embedding
MAXKB_SANDBOX是否启用沙箱1
MAXKB_ADMIN_PATH管理后台路径/admin
MAXKB_LOG_LEVEL日志级别INFO

测试验证

bash test.sh oc9-maxkb:2.7.0

测试脚本会验证以下内容:

  • Python 版本 ≥ 3.11
  • Django 框架可用
  • MaxKB 核心模块可导入
  • LangChain 核心库可用
  • PyTorch CPU 可用
  • 前端构建产物存在
  • sandbox 共享库存在
  • 入口文件完整性

已知问题

  • 构建时需要 ≥8GB 内存,内存不足会导致 pip install 或 npm build OOM
  • 镜像仅包含 MaxKB 应用本身,PostgreSQL(带 pgvector)和 Redis 需通过 docker-compose 单独部署
  • 首次启动时需确保数据库已初始化并创建了 pgvector 扩展(需执行 CREATE EXTENSION vector
  • 原始官方镜像将 PostgreSQL 和 Redis 打包在同一容器中,本适配将它们分离为独立服务
  • Embedding 模型需要额外下载到 /opt/maxkb/model/embedding/ 目录

Tag summary

Content type

Image

Digest

sha256:b95508390

Size

589.3 MB

Last updated

4 months ago

docker pull ocpub/oc9-maxkb:2.7.0