
WeKnora 零门槛 Docker 部署3 步跑通可用的 RAG 知识库【免费下载链接】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 知识平台能把原始文档变成可检索的 RAG 知识库、推理 Agent 和自维护 Wiki。本文带你用 Docker 部署 WeKnora从机器自查、最小化启动到生产加固全程只需基本 Linux 命令。适合第一次部署的零基础新手和想把 WeKnora 用到生产环境的普通开发者。部署前自查1 分钟确认机器够不够WeKnora 用 Docker Compose 编排多个容器即用一个文件声明并一起启动一组容器核心包括前端、主应用、文档解析服务、PostgreSQLParadeDB 版自带向量检索、Redis 缓存MinIO 和 Neo4j 等按需在 Compose profile 里开启。环境类型CPU内存磁盘说明开发测试2 核4GB20GB仅跑核心服务 本地 Ollama生产环境4 核16GB100GB建议另备一台 Ollama/模型服务在终端直接运行下面这段确认资源与 Docker 可用echo CPU: $(nproc) 核 echo 内存: $(free -h | awk /Mem:/{print $2}) echo 磁盘: $(df -h . | awk NR2{print $4}) 可用 docker version --format {{.Server.Version}} docker compose version执行bash -c 粘贴上面内容或保存为check.sh后运行bash check.sh均可。经验提示模型推理与文档解析同时跑时内存占用会翻倍生产机器建议预留 50% 内存余量。3 步跑通最小部署从代码到首次访问第 1 步拉取代码git clone https://gitcode.com/GitHub_Trending/we/WeKnora cd WeKnora第 2 步复制并确认配置。启动脚本会自动从模板生成.env你只需确认关键项cp .env.example .env # 生成 .env脚本也会自动做这步 # 打开 .env 确认以下默认值是否满足你 # APP_PORT8080 后端 API 端口 # FRONTEND_PORT80 前端访问端口 # DB_DRIVERpostgres 主数据库类型 # OLLAMA_BASE_URLhttp://host.docker.internal:11434 # 本地 Ollama 地址第 3 步一键启动。启动脚本 会检查 Docker 环境、拉起本地 Ollama未安装时自动安装、拉取镜像并启动所有核心容器./scripts/start_all.sh # 启动 Ollama 全部 Docker 容器启动完成后访问前端界面http://localhost:80即http://localhostAPI 接口http://localhost:8080健康检查/health首次进入前端会看到初始化配置向导在这里配置 Ollama 状态与 LLM/Embedding 模型核心配置项解析启动后该改哪些变量 ⚙️.env里有上百个变量新手只需盯住下面这几项配置项默认值作用建议值APP_PORT8080后端 API 的宿主机端口冲突时改为未占用端口FRONTEND_PORT80前端 nginx 的宿主机端口被占用就改并同步改访问地址DB_DRIVERpostgres主数据库类型postgres/mysql/sqlite生产保持postgresDB_PASSWORD模板示例值数据库密码生产必须换强密码REDIS_ADDRredis:6379缓存与队列连接地址保持默认STORAGE_TYPElocal文件存储后端local/minio/s3 等单机用local多机改minioOLLAMA_BASE_URLhttp://host.docker.internal:11434LLM 服务地址容器外用此地址连宿主机远程推理改成你的服务端点LOG_LEVELdebug日志级别debug/info/warn/error生产改info启动后还可以在前端设置页调整语言、解析引擎、存储引擎等运行时选项不用重启容器常见报错速查卡住时直接定位 启动脚本报 未安装Docker请先安装Docker 或 Docker服务未运行Q: 执行./scripts/start_all.sh提示 Docker 检查不通过 A: 确认 Docker 已安装且在运行docker version系统服务未启动则sudo systemctl start docker再重跑脚本。日志提示 本地Ollama服务启动失败 或 远程Ollama服务不可访问Q: 容器起来了但大模型相关功能不可用 A: 先验证 Ollama 是否可连curl -s http://localhost:11434/api/tags。本地服务未起则systemctl restart ollama配置的是远程地址则确认.env里OLLAMA_BASE_URL可达OLLAMA_OPTIONALtrue时仅告警不阻断启动。前端打不开疑似 80 端口冲突Q: 浏览器访问http://localhost显示别的网站或拒绝连接 A: 查端口占用ss -tulpn | grep :80确认是 WeKnora-frontend 容器监听若是改.env中FRONTEND_PORT后./scripts/start_all.sh -s停止再重新启动。生产环境优化安全加固与性能提速 ️上线前过一遍这个清单DISABLE_REGISTRATIONtrue禁止陌生人自助注册DB_PASSWORD、REDIS_PASSWORD全部换成强随机值显式设置 32 字节的SYSTEM_AES_KEY丢失会导致已加密的 API Key 等字段无法解密GIN_MODErelease且LOG_LEVELinfo关闭 Swagger 与调试日志前置 nginx/网关挂 HTTPS不裸奔 8080 端口定期备份data-files等 Docker 数据卷docker volume ls查看多实例共享 Redis 时设置WEKNORA_REDIS_NAMESPACE隔离频道性能侧抓住三个关键动作每项一行命令盯住资源水位确认瓶颈在 CPU 还是内存docker stats WeKnora-app WeKnora-docreader调整后台任务并发WEKNORA_ASYNQ_CORE_CONCURRENCY、CONCURRENCY_POOL_SIZE见.env注释后热重启应用容器docker compose up -d app确认 ParadeDB 向量/全文索引就位检索性能依赖它docker compose exec postgres psql -U postgres -d WeKnora -c \di环境选型开发、生产还是离线三种典型场景的差异如下按需选择对比项开发环境生产环境离线环境代码加载只起基础设施docker-compose.dev.ymlapp/frontend 本地跑热重载镜像内置docker compose up -d提前docker pull或加载镜像包日志级别LOG_LEVELdebuginfowarn以上网络本地端口开放仅暴露必要端口HTTPS 入口内网隔离--no-pull启动更新策略实时改码即时生效计划窗口docker compose pull up -d手动替换镜像后重启开发模式可先跑./scripts/check-env.sh自查本地依赖再按提示执行make dev-start等命令详见 快速开发模式说明离线环境记住一条命令./scripts/start_all.sh --no-pull跳过镜像拉取直接用本地镜像。总结到这里WeKnora 的 Docker 部署、避坑与生产环境优化就串成了一条完整路径自查 → 3 步启动 → 改配置 → 按场景选环境。后续如果想扩展能力可以研究 内置模型声明式配置 或开启知识图谱NEO4J_ENABLE等进阶项。【免费下载链接】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),仅供参考