不花一分钱,在自己电脑上部署一套带“大脑”的自动化系统(n8n + 本地向量模型)
n8n是一个开源的AI+workflow的平台,能通过零代码方式搭建流程和AI应用。虽然N8N托管云服务用起来很方便,并且还不需要自运维,但是每个月24欧元的价格还是有点小贵,另外如果你的企业有安全管控,流程和数据在公网也不是很合适,更何况是国外的网站还有合规的风险。docker为软件的安装提供集成环境,使得软件安装不必再被缺少环境依赖困扰,使用docker安装软件非常方便,而docker des
n8n是一个开源的AI+workflow的平台,能通过零代码方式搭建流程和AI应用。虽然N8N托管云服务用起来很方便,并且还不需要自运维,但是每个月24欧元的价格还是有点小贵,另外如果你的企业有安全管控,流程和数据在公网也不是很合适,更何况是国外的网站还有合规的风险。
安装docker desktop
docker为软件的安装提供集成环境,使得软件安装不必再被缺少环境依赖困扰,使用docker安装软件非常方便,而docker desktop是windows比较好用docker 工具。当然没有docker 也可以自行安装n8n就需要考虑环境的差异,非常建议用docker来安装n8n等等的软件。
环境:windows11 64位,升级到22H2后的版本(这是22年的版本,你开着自动更新一般都是最新的)
- 步骤1:确认虚拟化已开启,通常是开启,可跳过。
搜索任务管理器并打>>任务管理器 >>性能 >>CPU >>查看“虚拟化: 已启用”
- 步骤 2:(推荐)手动启用 WSL2,如果不操作此步骤安装docker desktop也会打开
此步骤也可以跳过,docker desktop安装过程中如果发现WSL没有或版本低会自动指导安装的。
# 以管理员身份运行 PowerShell wsl --install --no-distribution # (重要!)执行完后重启电脑生效
- 步骤3:下载并安装docker desktop
注册并登录>> 下载安装包

下载后执行安装程序,安装过程会长一点,耐心等待。
安装后打开docker desktop的图标,就可以正常使用了。
如果上边的步骤2没有执行,可能会在窗口提示:WSL needs updating。直接点下边的restart按钮>>弹出一个命令窗口>>按任意键(开始更新WSL)>>看提示更新完成后再点任意键退出命令窗口>>再点界面restart按钮重启docker服务>>等待一会就能使用了。
安装ollama
ollama是一个专门为本地运行模型而设计的开源工具,可以运行大模型和普通模型。一般场景个人没有GPU去运行大模型,但是一些小模型是可以运行在cpu上的,例如将文字转化为向量的向量模型。这样对于小的模型就不用再依赖收费的api,也保证数据的安全。这篇文章中主要用ollama来运行一个向量模型bge。
环境:windows11 64位,至少8G内存。建议和n8n别在一台机器,会略慢,如果你是16G部署在一起也可以忍受。
官网下载:https://ollama.com 老版本需要WSL,新版本已原生支持windows,就是docker desktop依赖的那个WSL。
点下载的exe执行安装。完成后,通过命令 ollama --version 来验证是成功。ollama一般也会在系统托盘中羊驼标志的图标
模型仓库地址:https://ollama.com/library
ollama常用命令
ollama --version 查看版本
ollama run <模型名> 运行某个模型,首次会自动下载模型
ollama pull <模型名> 下载某个模型
ollama list 列出已安装的模型
ollamava ps 查看当前运行的模型
ollama rm <模型名> 删除某个模型
安装和启动N8N
- 步骤1:拉取n8n镜像
有了docker desktop安装非常简单,打开docker desktop。搜索n8n>>选择n8nio/n8n>>tag 选择latest(最后版本)>>pull

- 步骤2:添加卷标(可选,建议)
docker镜像停止运行后数据磁盘上数据都不会保存,因此需要指导到宿主机(就是你的windows)机器上某个文件,这样停止后数据就不会丢失。这里是以用docker desktop添加一个由dokcer desktop管理的磁盘目录。这个目录你手工访问会比较麻烦,但是简单。
只能添加一个,没有添加时显示红色“Add”按钮,添加后显示“Delete”,名称自己定义,具体文件位置是由docker desktop自行管理

- 步骤3:启动n8n镜像
方式一:通过docker desktop界面启动
docker desktop>>(左侧)image菜单>>找到(镜像名)n8nio/n8n那行左侧运行按钮

端口配置:
Host port:是你在windows机器上访问服务的端口,n8n在容器中默认的端口是5678,host port和容器内端口可以不一样,但如果不一致需要注意,n8n给出的一些url地址,当在windows机器上访问时要改成host port。
外挂磁盘配置:
Host path,如果第2步设置n8n_data(你的命名)可以直接填写n8n_data,也可以填写机器中某个固定目录。填写n8n_data方便(建议),也不用关心文件在哪里,而填写固定目录可以直接操作n8n容器中文件,某些情况会需要。
Container path,必须填写/home/node/.n8n 这是n8n默认目录。
Environment variables可以设置高级参数,暂时用不到
填好配置点"run"按钮就启动镜像,访问http://localhost:5678 则打开n8n的界面
方式二:命令行启动
先打开docker desktop界面,然后在打开一个windows命令行窗口,执行下边的脚本
docker volume create n8n_data docker run -it --rm \ --name n8n \ -p 5678:5678 \ -e GENERIC_TIMEZONE="<YOUR_TIMEZONE>" \ -e TZ="<YOUR_TIMEZONE>" \ -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true \ -e N8N_RUNNERS_ENABLED=true \ -v n8n_data:/home/node/.n8n \ n8nio/n8n
n8n就安装并启动完成了,可以登录了。
安装向量模型(bge-m3)
向量模型提供1024维的文本向量化,对中文支持友好,是比较流行和推荐的一个向量化模型,当然也可以选择其他的向量模型。
前提:以安装ollama,并启动ollama
打开windows命令行窗口,执行下边命令
1)下载:ollama pull bge-m3
2)运行:ollama run bge-m3 "供应商管理的核心指标有哪些?"
验证向量模型
Ollama 会默认在本地启动 *http://127.0.0.1:11434* (取决于你版本)。
调用接口
# python 的rest api方式,也可以使用postman调用或ollama的sdk调用
import requests
import json
url = "http://127.0.0.1:11434/v1/embeddings"
payload = {
"model": "bge-m3",
"input": ["供应商评估方法", "采购流程优化"]
}
response = requests.post(url, json=payload)
embeddings = response.json()
print(embeddings)
安装向量库chroma
chroma是个简单易用的内嵌向量数据库
通过docker desktop部署一个chroma,步骤和n8n非常相似,也可以通过下边的命令运行
docker run -d -p 8000:8000 -v ~/chroma_data:/chroma/chroma chromadb/chroma
向量库的相关说明:
1)n8n 提供了多个主流向量库的集成,你可以根据需求选择:
-
Pinecone: 云端托管,性能强,适合生产环境。
-
Milvus / Qdrant: 适合处理大规模数据的专业级向量库。
-
Supabase (pgvector): 如果你已经在用 Postgres,这是最方便的选择。
-
In-Memory Vector Store: 最适合新手。数据存在内存中,工作流运行完就消失,适合快速测试。
-
Chroma: 开源且流行的轻量级选择。
2)常见向量库对比
| 数据库 | 开源 | 语言支持 | 核心特点 | 适合场景 |
|---|---|---|---|---|
| Milvus | ✅ (Apache 2.0) | Python/Go/Java/Node.js 等 | 高性能、云原生、支持标量+向量混合查询、GPU 加速 | 大规模企业级应用(亿级向量) |
| Qdrant | ✅ (Apache 2.0) | Rust(服务端),Python/Go/JS 客户端 | 内存高效、支持 payload 过滤、REST/gRPC 双接口 | 中小规模 RAG、快速部署 |
| Weaviate | ✅ (BSD-3) | Go(服务端),多语言客户端 | 内置 LLM 模块、支持自动向量化、GraphQL 查询 | AI 原生应用、语义知识图谱 |
| Pinecone | ❌(商业 SaaS) | Python/JS | 全托管、免运维、低延迟、自动扩缩容 | 快速上线、不想管基础设施 |
| Chroma | ✅ (Apache 2.0) | Python/JS | 轻量、嵌入式设计、与 LangChain/LlamaIndex 深度集成 | 原型开发、本地测试、小项目 |
| FAISS(Meta) | ✅ (MIT) | C++/Python | 非完整数据库,纯向量索引库 | 研究、离线批处理、无持久化需求 |
| pgvector | ✅ (PostgreSQL 插件) | SQL/Python | 直接嵌入 PostgreSQL,事务+向量一体化 | 已有 PostgreSQL、轻量级向量需求 |
离线部署
一种情况,你的部署机器只能访问内网无法访问内容,那么上边的软件的安装过程就是一个复杂的过程
1.离线安装docker
1)访问网址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
2)下载安装:
| 软件 | 推荐版本(示例) |
|---|---|
| containerd.io | 1.6.33-3.1.el7 |
| docker-ce | 26.1.3-1.el7 |
| docker-ce-cli | 26.1.3-1.el7 |
| docker-buildx-plugin | 0.12.1-1.el7 |
| docker-compose-plugin | 2.27.0-1.el7 |
| docker-ce-rootless-extras | 26.1.3-1.el7 |
3)创建目录 docker-offline目录,上传文件
一次性安装,执行命令:yum localinstall -y *.rpm
查看docker的版本:docker version
4) 启动命令
systemctl start docker
systemctl status docker
2.离线安装ollama
不推荐在centos上直接安装ollama, 因为 CentOS 7 上 Ollama 非常容易因 glibc 版本低而无法运行。因此还是走docker安装的思路。
但,上边是来自网上实际装独立版本的ollama也挺顺利的,下边是docker安装过程
*方式一:文件包安装*
不推荐会遇到centos7.9兼容问题,如果在新linux版本上可以尝试,centos7.9试了一下相当麻烦
*方式二:docker 安装*
1)拉取镜像,找个能联网的机器
docker pull dockerproxy.net/ollama/ollama:latest
试了好几个地址都失败,这个可以
2)保存镜像
docker save -o ollama.tar dockerproxy.net/ollama/ollama
-- 下边两步没有验证
3)导入镜像
docker load -i ollama.tar
4)启动镜像(如果要加载模型,参看2.2节启动命令)
docker run -d --name ollama -p 8434:11434 dockerproxy.net/ollama/ollama
3.离线的安装bge-m3(通过ollama)
1)现在联网的windows机器上下载模型
ollama pull bge-m3
2)查看模型是否下载
ollama list
3)上传模型文件(注意这里采用是模型覆盖的方式)
C:\Users<用户>.ollama\models 下拷贝,打包成tar包上传centos机器
4)避免冲突,先停止ollama服务
docker ps
docker stop ollama
5)指定模型文件,并启动docker
docker run -d \
--name ollama \
-p 8434:11434 \
-v /your/offline/.ollama:/root/.ollama \
--restart always \
dockerproxy.net/ollama/ollama:latest
6)验证模型使用
可以用postman配置调用
url:http://10.157.151.206:8434/api/embeddings
body:
{
"model": "bge-m3",
"prompt": "Artificial intelligence is transforming the world."
}
header
content-type:application/json
4.n8n和chroma的安装
通过docker 的离线模式,参见离线安装ollama的方式二
更多推荐
所有评论(0)