我见过不少人一开始想做 AI 工作流,最后工具越装越多。
简单问答用 Open WebUI,文档问答用 AnythingLLM,复杂应用用 Dify,自动化用 n8n。每个工具都能解决一部分问题,但如果你真正想做的是:
把 LLM、Prompt、向量库、检索、工具调用、API 节点串成一条可视化链路。
那 Flowise 很值得单独看。
它更像 LangChain 的可视化编辑器。你不用一上来写一堆 Python/TypeScript 代码,而是在浏览器里拖节点:Chat Model、Prompt Template、Retriever、Vector Store、Tool、Chain,然后连起来测试。
这篇就按 VPS 自托管讲:什么配置能跑,怎么用 Docker 部署,怎么加 HTTPS 和登录认证,数据怎么备份,什么时候该选 Flowise,什么时候别硬上。
Flowise 不是“又一个 ChatGPT 网页壳”。它适合做 AI 链路编排。
| 需求 | 适不适合 Flowise | 更适合的工具 |
|---|---|---|
| 拖拽搭建 LLM 工作流 | 适合 | Flowise |
| 学 LangChain / RAG 流程 | 适合 | Flowise |
| 快速做一个 AI API 原型 | 适合 | Flowise |
| 做完整 AI 应用后台 | 一般 | Dify |
| 做跨平台自动化 | 一般 | n8n |
| 只是聊天 | 不太适合 | Open WebUI |
| 只做文档知识库问答 | 不一定 | AnythingLLM |
我会这样理解:
- Dify 更像 AI 应用平台
- n8n 更像自动化工作流平台
- Flowise 更像 LLM 链路搭建工具
如果你想理解“一个 RAG 问答到底怎么把文档、向量库、Prompt、模型串起来”,Flowise 的可视化节点非常直观。
Flowise 本身不算重。真正消耗资源的是你接的数据库、向量库、本地模型和并发请求。
如果只跑 Flowise + 云端模型 API:
| 用法 | VPS 配置 |
|---|---|
| 个人测试 | 1 核 / 2GB / 20GB SSD |
| 长期自用 | 2 核 / 4GB / 40GB SSD |
| 小团队共用 | 4 核 / 8GB / 80GB SSD |
如果你还要同机跑 Qdrant、PostgreSQL、Redis、Ollama,那就别按最低配置买。
我的建议:
- 只接 OpenAI / Claude / DeepSeek / OpenRouter:2C4G 够用
- Flowise + Qdrant + PostgreSQL:4C8G 更稳
- Flowise + Ollama 本地模型:16GB 内存起步更现实
别拿 1C1G 小鸡跑一堆 AI 工具。能打开面板是一回事,真正跑工作流又是另一回事。
这篇用 Ubuntu / Debian 系 VPS 举例。
先 SSH 登录:
ssh root@your_server_ip
更新系统:
apt update && apt upgrade -y
安装基础工具:
apt install -y ca-certificates curl gnupg ufw
检查资源:
free -h
df -h
Flowise 默认跑在 3000 端口。先看看有没有被占用:
ss -tlnp | grep 3000
如果你这台机器已经有 Perplexica、Grafana、某个前端项目占了 3000,就要换端口或者用反向代理区分域名。
如果机器还没装 Docker,可以按下面来。
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" > /etc/apt/sources.list.d/docker.list
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
确认安装:
docker --version
docker compose version
如果只是先跑起来测试,可以用 Docker Run。
docker run -d \
--name flowise \
--restart unless-stopped \
-p 127.0.0.1:3000:3000 \
-v /opt/flowise:/root/.flowise \
-e PORT=3000 \
-e FLOWISE_USERNAME=admin \
-e FLOWISE_PASSWORD='replace-with-a-strong-password' \
flowiseai/flowise:latest
注意两点:
- 我把端口绑定到
127.0.0.1,不直接暴露公网 /opt/flowise挂载到/root/.flowise,避免容器重建后数据丢失
看容器:
docker ps --filter "name=flowise"
看日志:
docker logs flowise --tail=100
本机测试:
curl -I http://127.0.0.1:3000
如果本机能访问,后面再用 Caddy 做 HTTPS。
长期用我更建议 Compose。目录清楚,升级和备份也方便。
创建目录:
mkdir -p /opt/flowise
cd /opt/flowise
创建 .env:
cat > .env << 'EOF'
PORT=3000
FLOWISE_USERNAME=admin
FLOWISE_PASSWORD=replace-with-a-strong-password
DATABASE_PATH=/root/.flowise
SECRETKEY_PATH=/root/.flowise
LOG_PATH=/root/.flowise/logs
BLOB_STORAGE_PATH=/root/.flowise/storage
DISABLE_FLOWISE_TELEMETRY=true
EOF
这里的密码一定要改,不要用示例值。
创建 docker-compose.yml:
services:
flowise:
image: flowiseai/flowise:latest
container_name: flowise
restart: unless-stopped
ports:
- "127.0.0.1:3000:3000"
environment:
- PORT=${PORT}
- FLOWISE_USERNAME=${FLOWISE_USERNAME}
- FLOWISE_PASSWORD=${FLOWISE_PASSWORD}
- DATABASE_PATH=${DATABASE_PATH}
- SECRETKEY_PATH=${SECRETKEY_PATH}
- LOG_PATH=${LOG_PATH}
- BLOB_STORAGE_PATH=${BLOB_STORAGE_PATH}
- DISABLE_FLOWISE_TELEMETRY=${DISABLE_FLOWISE_TELEMETRY}
volumes:
- /opt/flowise/data:/root/.flowise
entrypoint: /bin/sh -c "sleep 3; flowise start"
启动:
docker compose up -d
检查:
docker compose ps
docker logs flowise --tail=100
这套已经能满足个人和小团队测试。
假设你的域名是:
flowise.example.com
DNS 添加 A 记录:
flowise.example.com -> your_server_ip
安装 Caddy:
apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' > /etc/apt/sources.list.d/caddy-stable.list
apt update
apt install -y caddy
编辑配置:
nano /etc/caddy/Caddyfile
写入:
flowise.example.com {
reverse_proxy 127.0.0.1:3000
}
检查并重载:
caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy
现在访问:
https://flowise.example.com
你会看到 Flowise 登录页。
如果使用 Caddy 反代,只开放 SSH、80、443。
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ufw status
不要开放 3000:
ufw deny 3000/tcp
前面 Compose 已经把 3000 绑定到 127.0.0.1,这一步是再加一层保险。
Flowise 面板如果裸奔到公网,风险很高。
因为里面可能有:
- OpenAI / DeepSeek API Key
- 向量库连接信息
- 数据库连接信息
- 内部工具调用接口
- 你做好的工作流 API endpoint
至少设置:
FLOWISE_USERNAME=admin
FLOWISE_PASSWORD=replace-with-a-strong-password
如果你在公司内部用,还可以加 Cloudflare Access、Tailscale 或 VPN,只允许固定用户访问面板。
部署好以后,不要一上来做复杂 Agent。
先做最小链路:
- 添加 Chat Model 节点
- 选择 OpenAI / OpenRouter / DeepSeek / Ollama
- 添加 Prompt Template
- 连到 LLM Chain
- 打开 Chat 测试
最小测试问题可以这样:
用三句话解释 VPS、Docker 和反向代理的关系。
如果这个都跑不通,先别碰 RAG、Tool、Agent。
常见问题通常是:
- API Key 填错
- 模型名写错
- VPS 无法访问模型 API
- 节点没连对
- 保存后没有重新测试
Flowise 的好处是模型节点比较多,你可以按实际情况选。
如果用 OpenAI,通常要准备:
OPENAI_API_KEY=sk-xxxx
如果用 OpenRouter,可以选择 OpenAI-compatible 接法,重点是 Base URL 和模型名。
如果用 DeepSeek,也可以按兼容 OpenAI 的方式接。
这里别把 API Key 写进公开文档,也不要把 .env 提交到 Git 仓库。
我更建议在 Flowise 的 Credential 管理里填,不要写死在每个节点里。后面换 Key 时更方便。
如果你想让模型跑在自己 VPS 上,可以接 Ollama。
安装 Ollama:
curl -fsSL https://ollama.com/install.sh | sh
拉一个模型:
ollama pull qwen2.5:7b
测试:
curl http://127.0.0.1:11434/api/tags
如果 Flowise 在 Docker 里,要访问宿主机 Ollama,不能直接写 localhost。
Compose 加上:
extra_hosts:
- "host.docker.internal:host-gateway"
然后在 Flowise 的 Ollama 节点里填:
http://host.docker.internal:11434
如果你填 http://localhost:11434,Flowise 容器会去找自己容器里的 11434,通常就会连接失败。
Flowise 默认可以用本地文件方式保存数据,对个人测试够用。
但如果你准备长期多人使用,或者想更规范地备份,可以考虑 PostgreSQL。
简单判断:
| 场景 | 数据库选择 |
|---|---|
| 个人测试、少量 Flow | 默认本地文件 |
| 小团队长期使用 | PostgreSQL 更稳 |
| 多实例、高并发 | PostgreSQL + Redis + 更完整架构 |
不要一开始就把架构拉满。Flowise 本身已经有很多节点和配置,先让核心流程稳定,比堆一堆数据库服务更重要。
最少要备份这个目录:
/opt/flowise/data
里面包括你的 Flow、Credential、日志、存储文件等关键数据。
本地打包:
mkdir -p /opt/backups
tar -czf /opt/backups/flowise-data-$(date +%F).tar.gz /opt/flowise
同步到对象存储:
rclone copy /opt/backups/flowise-data-$(date +%F).tar.gz r2:backup-bucket/flowise/
如果你用了 PostgreSQL,也要额外备份数据库:
pg_dump "$DATABASE_URL" | gzip > /opt/backups/flowise-db-$(date +%F).sql.gz
别只备份 Compose 文件。真正值钱的是你画好的 Flow 和 Credentials。
Compose 部署升级很简单:
cd /opt/flowise
docker compose pull
docker compose up -d
升级前先备份:
tar -czf /opt/backups/flowise-before-upgrade-$(date +%F).tar.gz /opt/flowise
升级后检查:
docker compose ps
docker logs flowise --tail=100
curl -I http://127.0.0.1:3000
然后在网页里实际跑一个 Flow,确认节点、Credential、API endpoint 都正常。
先看容器:
docker ps --filter "name=flowise"
docker logs flowise --tail=100
再看本机端口:
curl -I http://127.0.0.1:3000
如果本机不通,修 Flowise 容器。如果本机通、域名不通,查 Caddy:
caddy validate --config /etc/caddy/Caddyfile
journalctl -u caddy -n 100 --no-pager
确认 .env 里的用户名密码:
cd /opt/flowise
grep FLOWISE_ .env
改完后重启:
docker compose up -d
如果浏览器缓存旧状态,换无痕窗口试一次。
先确认 API Key 和模型名。
如果是 OpenAI / OpenRouter:
curl -I https://api.openai.com
如果是 Ollama:
curl http://127.0.0.1:11434/api/tags
容器里访问宿主机 Ollama,要用:
http://host.docker.internal:11434
大概率是没有挂载持久化目录。
检查 Compose 里有没有:
volumes:
- /opt/flowise/data:/root/.flowise
检查宿主机目录:
ls -lah /opt/flowise/data
如果你之前没挂载就直接跑容器,容器删除后数据可能已经没了。
先看 VPS 资源:
htop
free -h
docker stats
再看是哪一步慢:
- 模型 API 慢
- 向量库检索慢
- 文档切分太大
- Ollama 本地模型太大
- 外部 HTTP 工具调用慢
Flowise 的慢不一定是 Flowise 自己慢,很多时候是某个节点慢。
这三个经常被放在一起比较。
| 工具 | 更适合 |
|---|---|
| Flowise | 可视化 LLM 链路、LangChain、RAG 原型 |
| Dify | AI 应用平台、对外发布、知识库和工作流 |
| n8n | 自动化任务、Webhook、第三方系统集成 |
我的建议:
- 想学和调试 LLM 链路:Flowise
- 想做一个完整 AI 应用给别人用:Dify
- 想把 AI 接进业务流程:n8n
比如你要做“用户提交表单 -> 查 CRM -> 调模型总结 -> 发 Slack”,n8n 更合适。
你要做“文档检索 -> Prompt -> 模型回答 -> 观察每个节点输出”,Flowise 更直观。
你要做“一个带登录、知识库、API、应用发布的 AI 产品”,Dify 更完整。
如果是我自己在 VPS 上跑 Flowise,我会这样配:
- VPS:2 核 4GB 起步
- 部署:Docker Compose
- 端口:只绑定 127.0.0.1:3000
- HTTPS:Caddy 反代
- 登录:必须设置 FLOWISE_USERNAME / FLOWISE_PASSWORD
- 模型:先接 OpenRouter / DeepSeek / OpenAI
- 本地模型:等流程稳定后再接 Ollama
- 备份:每天备份
/opt/flowise - 团队长期用:再考虑 PostgreSQL
Flowise 的价值不在于“装了一个 AI 工具”,而在于它把 LLM 链路拆成你看得见、调得动的节点。对学习 RAG、做 AI 原型、排查 Prompt 和工具调用问题的人来说,它比直接写代码更快,也比纯聊天界面更清楚。
但它不是万能后台。权限、产品化、用户管理、复杂应用发布这些事,Dify 可能更合适。选工具前先想清楚:你要的是“搭链路”,还是“做产品”。
