从零用 Docker 部署 WeKnora 开源知识库的完整指南:5 步快速上手 从零用 Docker 部署 WeKnora 开源知识库的完整指南5 步快速上手【免费下载链接】WeKnoraOpen-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki.项目地址: https://gitcode.com/GitHub_Trending/we/WeKnoraWeKnora 是一个开源的 LLM 知识平台能把 PDF、Word、网页等原始文档变成可问答的 RAG 知识库、可自主推理的 Agent 和自动维护的 Wiki。本文带你完成 WeKnora 的 Docker 部署从环境自检到一键启动再到生产优化要点全程只需敲 4 条命令。读完本文你会得到一张环境需求表、一条最短部署路径、一份「真正要改的配置」清单以及生产环境的安全与性能要点。环境准备部署前花 2 分钟确认本章给你一张硬件需求表和几个自检动作避免装到一半卡在资源不足。需求表配置项最低要求说明CPU2 核文档解析和 embedding 是 CPU 密集操作4 核更从容内存4GB解析大 PDF、扫描件时占用明显8GB 更稳磁盘20GB 空闲镜像 数据库 文档文件都会持续占用Docker已安装且服务运行需要 Docker Composedocker compose或docker-compose网络可拉取镜像离线环境可提前导入镜像启动时用--no-pull环境自检启动前确认三件事即可执行docker info确认 Docker 服务在运行执行nproc和free -h确认 CPU 与内存满足上表确认 80、8080 端口未被占用可用netstat -tulpn | grep -E :80|:8080。仓库自带./scripts/start_all.sh -c也能做一次完整环境检查包括 Ollama 和磁盘空间。快速上手5 步启动 WeKnora本章是最小组装路径先克隆、再配置、最后启动每步都有验证点。第 1 步克隆仓库git clone https://gitcode.com/GitHub_Trending/we/WeKnora cd WeKnora第 2 步准备环境变量cp .env.example .env.env.example里每个变量都有中文注释直接复制后按需修改。核心服务用默认值就能跑起来真正必填的只有数据库账号密码和模型配置详见后文「关键配置」。第 3 步拉取镜像docker compose pull第 4 步启动核心服务docker compose up -d启动后执行docker compose ps应看到 frontend、app、docreader、postgres、redis 五个容器全部 healthy。仓库也提供一键脚本./scripts/start_all.sh它会顺带检查并拉起本地 Ollama适合完全不想手动操作的场景。第 5 步打开界面完成初始化浏览器访问http://localhost注册第一个账号然后在「设置 → 模型」里配置对话模型LLM和向量模型Embedding支持 OpenAI、DeepSeek、Qwen、Ollama 等 20 提供商。配置完上传第一篇文档就能在问答界面检索你的知识库了。看懂内部5 个核心容器如何协同本章讲清端口、依赖和数据流向出问题时你能定位到具体是哪个组件。组件职责一览组件端口职责依赖frontend80Nginx 托管前端静态资源并把/api反向代理到 appappapp8080Go 主服务API、RAG 流水线、Agent、任务队列postgres、redis、docreaderdocreader50051gRPC不映射到宿主机文档解析PDF、Word、Excel、网页等 10 格式无postgres5432仅容器网络ParadeDB 镜像主数据库 pgvector 向量检索无redis6379仅容器网络任务队列与流处理无启动顺序由 compose 的健康检查保证postgres 和 docreader 先就绪app 才启动frontend 最后等 app 变 healthy 才放行。数据流向一次「上传并问答」的完整链路是文档经 frontend 传给 appapp 调 docreader 解析成文本块做 embedding 后写入 postgres提问时 app 在 postgres 里做向量关键词混合检索把命中的片段连同问题一起交给外部 LLM 生成带引用的回答。异步任务解析、摘要、图谱抽取全部走 redis 队列由 app 内的工作池消费。可选组件按需开启 Profile核心服务之外其余组件都放在 Docker Compose Profile 里需要时加参数启动neo4j知识图谱7474/7687、minio对象存储9000/9001、qdrant/milvus替换向量库、searxng自建网页搜索8888、langfuse链路追踪3000、mcpMCP Server8082。多个可组合docker compose --profile neo4j --profile minio up -d。完整特性可一步到位--profile full。关键配置只有这几项真正需要改本章列出 .env.example 中建议你动手改的字段其余保持默认即可。# ---- 数据库默认值可直接用多用户共享部署建议改密码---- DB_USERpostgres # 默认 postgres DB_PASSWORDpostgres123!# # 默认值生产必改 DB_NAMEWeKnora # 默认 WeKnora # ---- Redis默认密码---- REDIS_PASSWORDredis123!# # 生产必改 # ---- 存储与向量库默认本地磁盘 postgres 向量---- STORAGE_TYPElocal # 可选 minio/s3/cos/oss 等 RETRIEVE_DRIVERpostgres # 可选 qdrant/milvus/opensearch 等 # ---- 模型服务用本地 Ollama 时保持默认即可---- OLLAMA_BASE_URLhttp://host.docker.internal:11434 OLLAMA_OPTIONALtrue # Ollama 不可用时只告警不阻断 # ---- 安全密钥生产必改---- JWT_SECRETweknora-jwt-secret # 留空则启动时随机生成 SYSTEM_AES_KEYweknora-system-aes-key-32bytes!! # 必须 32 字节 # 丢失则库内加密的 API Key 全部不可恢复 # ---- 注册开关生产建议关闭公开注册---- DISABLE_REGISTRATIONfalse # 默认 false生产建议 true两点提醒SYSTEM_AES_KEY是 AES-256 主密钥用于加密数据库里所有 API Key 和模型凭证生产环境必须显式设置并妥善备份丢失意味着已加密字段全部作废。模型对话/向量/Rerank默认在界面里配置而不是.env启动后到「设置」页填写即可无需改代码。生产与优化安全清单和性能旋钮本章分安全、性能两小节用清单过一遍即可。安全清单修改所有默认密码DB_PASSWORD、REDIS_PASSWORD、MinIO 账号若启用。重新生成JWT_SECRET和 32 字节的SYSTEM_AES_KEY并备份到密钥管理工具。设置DISABLE_REGISTRATIONtrue新成员走管理员邀请。部署在内外网隔离环境不要直接暴露公网必须对外时加 HTTPS 反向代理并收紧防火墙规则。确认GIN_MODErelease默认即生产模式禁用 Swagger 文档。为容器设置 CPU/内存限制配置日志轮转避免日志撑满磁盘。定期升级镜像版本跟随官方安全补丁升级方式.env中设WEKNORA_VERSION后重新docker compose pull docker compose up -d。性能要点解析吞吐大批量 PDF 时调大DOCREADER_PDF_RENDER_PARALLELISM渲染并行进程数和DOCREADER_ODL_MAX_WORKERSCPU 富余时收益明显。任务并发Asynq 工作池默认核心并发 8、富化并发 12可在.env的WEKNORA_ASYNQ_*_CONCURRENCY调整也能在系统设置页运行时热调无需重启。Embedding 限流调用远程模型出现 429 时调小CONCURRENCY_POOL_SIZE默认 5。向量库选型知识库超过百万级 chunk 时可切换RETRIEVE_DRIVER到 Qdrant/Milvus/OpenSearch或保留默认 postgres 的 HNSW 索引对 1024 维向量有加速。资源监控docker stats看容器水位任务积压、失败重试可在前端「系统管理 → 运行时队列」面板查看这是生产排障最有用的入口。收尾场景速查表场景建议做法本地体验核心五容器docker compose up -d即可模型用 Ollama 或任意云端 API开启知识图谱docker compose --profile neo4j up -d并在.env设NEO4J_ENABLEtrue构建阶段会调用大模型耗时较长启用对象存储docker compose --profile minio up -d.env中STORAGE_TYPEminio并配置 endpoint/桶名链路追踪接入 Langfuse Cloud填两把 key 即可或--profile langfuse自建离线环境有网机器docker compose pull后导出镜像离线机器导入后用./scripts/start_all.sh --no-pull启动开发改代码用 docker-compose.dev.yml 只起基础设施前后端本地跑make dev-start make dev-app make dev-frontend遇到问题优先看 docs/QA.md 的官方 FAQ 和 docs/ 目录下的专题文档如 docs/开发指南.md覆盖模型配置、图片失效、端口冲突等高频坑。部署完成后建议从一篇你最常查的文档开始建库先跑通「上传 → 解析 → 问答」闭环再逐步叠加图谱、Agent 和 IM 渠道等能力。【免费下载链接】WeKnoraOpen-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki.项目地址: https://gitcode.com/GitHub_Trending/we/WeKnora创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

最新新闻

iPCA随流检测:让园区网每一跳的时延丢包无处遁形

iPCA随流检测:让园区网每一跳的时延丢包无处遁形

简介:面向园区网络规划、运维人员及网络技术爱好者,华为敏捷园区解决方案的质量感知iPCA技术主打胶片重点解决传统网络监控在多点丢包、故障定界上的痛点。内容系统讲解iPCA包守恒算法的实现原理,对比Y.1731、IP PM、RFC6374/6375等传统P2P测…

2026/9/7 1:17:46
Java开发中的常见性能陷阱与优化实践

Java开发中的常见性能陷阱与优化实践

古罗马哲人塞涅卡有言:“不在于缺乏力量,而在于缺乏意志。 ”这句话放在Java性能优化上同样振聋发聩。Java平台本身经过数十年迭代,早已具备强大的JIT编译和高效的内存管理能力。可为何同一个应用、同一套测试、同一个JDK,有人能跑…

2026/9/7 1:17:46
中国到英国物流专线怎么选才不踩坑?

中国到英国物流专线怎么选才不踩坑?

盛林英国物流专线怎么样?一文说清时效、费用与适用人群核心结论盛林英国物流专线是盛林国际物流(盛林物流)旗下覆盖中国至英国的海运、空运专线服务,主打门到门、双清包税的一站式运输,适合有FBA送仓或大宗贸易发货需求的跨境电商卖家与外贸企业。 该结论成立的前提是:货物属于…

2026/9/7 1:17:46
K8s从入门到精通:核心概念、集群部署与排障实战笔记

K8s从入门到精通:核心概念、集群部署与排障实战笔记

简介:《容器集群k8s从入门到精通》是一份面向Kubernetes初学者与云原生运维人员的PDF电子书,系统梳理了应用部署从传统物理机、虚拟化到容器化的演进脉络,解释了容器编排需求产生的原因,并引出Kubernetes自我修复、弹性伸缩、服务…

2026/9/7 1:17:46
基于MATLAB的SPWM变频调速系统建模与仿真全解析

基于MATLAB的SPWM变频调速系统建模与仿真全解析

简介:这是一份面向电气工程、自动化及电力电子方向研究者的完整技术文档,内容基于MATLAB/Simulink对SPWM变频调速系统进行建模与仿真分析。文档从变频调速技术发展现状出发,系统讲解SPWM基本原理、系统组成及波形生成方法,并逐一拆…

2026/9/7 1:17:46
网神SecGate 3600防火墙配置实战:从安全策略到双机热备

网神SecGate 3600防火墙配置实战:从安全策略到双机热备

简介:本资源是奇安信网神SecGate 3600防火墙的官方配置指南,版本覆盖V3.6.6.0(含6.1.14、6.90.14、6.91.14等多个分支),共1391页,面向负责防火墙部署与运维的安全管理员、网络工程师及企业IT运维人员。文档…

2026/9/7 1:12:46