30分钟搞定AnythingLLM本地开发:从环境到启动全攻略
2026-02-04 04:27:14作者:董宙帆
你还在为LLM应用本地部署踩坑?依赖冲突、配置繁琐、启动失败?本文30分钟带你从零搭建AnythingLLM开发环境,顺利运行本地服务。读完你将获得:Docker与手动部署双方案、环境配置避坑指南、前后端服务启动全流程。
项目简介
AnythingLLM是一个全栈应用程序,可将任何文档、资源(如网址链接、音频、视频)或内容片段转换为上下文,供大语言模型(LLM)在聊天时参考。支持多用户管理、权限设置及多种LLM和向量数据库选择。
技术架构包含六个主要部分:
frontend: ViteJS + React前端server: NodeJS express服务器collector: 文档处理服务器docker: Docker部署相关文件embed: Web嵌入组件browser-extension: 浏览器扩展
环境准备
系统要求
- Docker(推荐)或Node.js 16+、Yarn
- Git
- 至少2GB RAM,10GB磁盘空间
克隆代码仓库
git clone https://gitcode.com/GitHub_Trending/an/anything-llm.git
cd anything-llm
部署方案
方案一:Docker快速部署(推荐)
Docker部署可避免环境依赖问题,适合大多数用户。
- 创建存储目录
export STORAGE_LOCATION=$HOME/anythingllm && \
mkdir -p $STORAGE_LOCATION && \
touch "$STORAGE_LOCATION/.env"
- 启动Docker容器
docker run -d -p 3001:3001 \
--cap-add SYS_ADMIN \
-v ${STORAGE_LOCATION}:/app/server/storage \
-v ${STORAGE_LOCATION}/.env:/app/server/.env \
-e STORAGE_DIR="/app/server/storage" \
mintplexlabs/anythingllm
Windows用户请使用PowerShell执行:
$env:STORAGE_LOCATION="$HOME\Documents\anythingllm"; `
If(!(Test-Path $env:STORAGE_LOCATION)) {New-Item $env:STORAGE_LOCATION -ItemType Directory}; `
If(!(Test-Path "$env:STORAGE_LOCATION\.env")) {New-Item "$env:STORAGE_LOCATION\.env" -ItemType File}; `
docker run -d -p 3001:3001 `
--cap-add SYS_ADMIN `
-v "$env:STORAGE_LOCATION`:/app/server/storage" `
-v "$env:STORAGE_LOCATION\.env:/app/server/.env" `
-e STORAGE_DIR="/app/server/storage" `
mintplexlabs/anythingllm;
- 访问应用 打开浏览器访问 http://localhost:3001
方案二:手动部署(开发人员)
适合需要修改源码或自定义配置的场景。
1. 初始化环境
yarn setup
该命令会创建必要的.env文件,请根据提示填写配置信息,特别是server/.env.development。
2. 安装依赖
分别安装前端、服务器和文档处理器的依赖:
# 安装服务器依赖
cd server
yarn install
cd ..
# 安装前端依赖
cd frontend
yarn install
cd ..
# 安装文档处理器依赖
cd collector
yarn install
cd ..
3. 启动服务
需要分别启动三个服务:
# 启动服务器
yarn dev:server
# 启动前端(新终端)
yarn dev:frontend
# 启动文档处理器(新终端)
yarn dev:collector
4. 初始化数据库
cd server
npx prisma migrate dev
cd ..
配置与使用
访问应用
打开浏览器访问 http://localhost:3001,首次使用需创建管理员账户。
主要功能
- 创建工作区:用于组织文档和对话
- 上传文档:支持PDF、DOCX、TXT等多种格式
- 设置LLM:可配置OpenAI、Ollama等多种LLM提供商
- 聊天交互:与文档内容进行智能对话
开发指南
项目结构
- frontend/: 前端React应用
- server/: Node.js后端服务
- collector/: 文档处理服务
- docker/: Docker配置文件
开发命令
- 前端开发:
yarn dev:frontend - 后端开发:
yarn dev:server - 代码检查:
yarn lint
贡献代码
请参考CONTRIBUTING.md了解贡献指南。
常见问题
无法连接本地LLM服务?
Docker容器中访问本地服务需使用host.docker.internal代替localhost,如Ollama地址应设为http://host.docker.internal:11434。
如何修改默认端口?
编辑.env文件,修改PORT环境变量。
数据存储位置?
- Docker部署:
$HOME/anythingllm - 手动部署:
server/storage/
总结
通过本文指南,你已成功搭建AnythingLLM本地开发环境。无论是使用Docker快速部署还是手动配置开发环境,都能让你快速体验到AnythingLLM的强大功能。如需进一步定制,可参考官方文档或查看源码进行二次开发。
如果你觉得本教程有帮助,请点赞收藏,关注获取更多LLM应用开发技巧!
参考资料
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
HY-Embodied-0.5这是一套专为现实世界具身智能打造的基础模型。该系列模型采用创新的混合Transformer(Mixture-of-Transformers, MoT) 架构,通过潜在令牌实现模态特异性计算,显著提升了细粒度感知能力。Jinja00
FreeSql功能强大的对象关系映射(O/RM)组件,支持 .NET Core 2.1+、.NET Framework 4.0+、Xamarin 以及 AOT。C#00
项目优选
收起
deepin linux kernel
C
27
14
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
658
4.26 K
Ascend Extension for PyTorch
Python
503
607
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
939
862
Oohos_react_native
React Native鸿蒙化仓库
JavaScript
334
378
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
390
285
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
123
195
openGauss kernel ~ openGauss is an open source relational database management system
C++
180
258
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.54 K
892
昇腾LLM分布式训练框架
Python
142
168

