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

访问官网:https://hub.docker.com/

注册并登录>> 下载安装包

       下载后执行安装程序,安装过程会长一点,耐心等待。

       安装后打开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的方式二

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐