n8n 是个工作流自动化工具,把各种服务连起来不用写代码。对接 Ollama 之后,能做的事情就更多了——收到邮件自动总结、RSS 自动翻译、定时生成报告等等。
部署
mkdir -p /opt/n8n && cd /opt/n8n
cat > docker-compose.yml << 'EOF'
version: "3.8"
services:
n8n:
image: docker.n8n.io/n8nio/n8n:latest
container_name: n8n
restart: unless-stopped
ports:
- "5678:5678"
volumes:
- n8n-data:/home/node/.n8n
environment:
- GENERIC_TIMEZONE=Asia/Shanghai
- TZ=Asia/Shanghai
volumes:
n8n-data:
EOF
docker compose up -d访问 http://你的IP:5678,首次注册账号。
对接 Ollama
n8n 从 1.30 版本内置了 Ollama 节点。版本不够的话:
docker compose pull n8n && docker compose up -dCredentials → Add Credential → 搜 Ollama → 填地址。
同机的话地址填 http://172.17.0.1:11434(Docker 网关)。Ollama 得监听 0.0.0.0,网关 IP 找法:
docker network inspect bridge --format='{{range .IPAM.Config}}{{.Gateway}}{{end}}'写个工作流试试
自动翻译流程:
- 添加 Manual 触发器(测试用)
- 加 Ollama Chat Model 节点
- 选凭证和模型(qwen2.5:7b)
- System Message 写:你是一个翻译助手。把输入的中文翻译成英文,只输出翻译结果。
- 把 Manual 的输出连到 Ollama 节点
- 执行,在 Manual 里输入要翻译的文字
更实用的——RSS 自动翻译通知:
- Schedule 触发器:每天 9:00
- RSS Feed Read 节点:填 RSS 地址
- Ollama 翻译节点
- Telegram/邮件/飞书通知节点
节点之间用线连起来就行,像画流程图。
Webhook 触发
工作流也可以被外部事件触发。加 Webhook 节点,n8n 给你一个 URL,任何 HTTP 请求到这个 URL 工作流就自动跑。
import requests
requests.post('http://localhost:5678/webhook/my-workflow', json={'data': '要处理的内容'})资源占用
n8n 自身 300~500MB。加上 Ollama 7B 模型总共 5.5G 左右。16G 机器比较宽裕。
升级就 docker compose pull && docker compose up -d。