mac 部署 n8n

Mac 本地部署 n8n,建议使用 Docker Compose。环境隔离、升级和数据持久化都更方便,n8n 官方也推荐大多数自托管场景优先使用 Docker。

方案一:Docker Compose 部署

1. 安装 Docker Desktop

先安装并启动 Docker Desktop。注意区分:

  • M1/M2/M3/M4:Apple Silicon 版本
  • Intel Mac:Intel 版本

Docker Desktop 已经包含 Docker Engine 和 Docker Compose。

安装完成后检查:

css 复制代码
docker --version
docker compose version

2. 创建 n8n 目录

bash 复制代码
mkdir -p ~/docker/n8n
cd ~/docker/n8n

3. 创建 docker-compose.yml

ini 复制代码
cat > docker-compose.yml <<'EOF'
services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    container_name: n8n
    restart: unless-stopped

    ports:
      - "5678:5678"

    environment:
      - TZ=Asia/Shanghai
      - GENERIC_TIMEZONE=Asia/Shanghai
      - N8N_ENCRYPTION_KEY=replace-with-your-random-secret-key
      - N8N_SECURE_COOKIE=false

    volumes:
      - ./n8n_data:/home/node/.n8n
EOF

N8N_ENCRYPTION_KEY 建议替换成随机密钥,可以执行:

perl 复制代码
openssl rand -hex 32

然后把生成的内容替换到配置中,例如:

ini 复制代码
- N8N_ENCRYPTION_KEY=8f97xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

这个密钥以后不要随意修改,否则已保存的账号凭证可能无法正常解密。

4. 启动 n8n

复制代码
docker compose up -d

查看状态:

复制代码
docker compose ps

查看日志:

复制代码
docker compose logs -f n8n

浏览器访问:

arduino 复制代码
http://localhost:5678

第一次进入时,按照页面提示创建管理员账号。


常用管理命令

停止:

arduino 复制代码
docker compose stop

重新启动:

复制代码
docker compose restart

停止并删除容器:

复制代码
docker compose down

只要没有删除 ~/docker/n8n/n8n_data,工作流和配置仍然存在。

升级 n8n:

bash 复制代码
cd ~/docker/n8n

docker compose pull
docker compose down
docker compose up -d

升级前建议备份:

bash 复制代码
cp -R ~/docker/n8n/n8n_data \
  ~/docker/n8n/n8n_data_backup_$(date +%Y%m%d_%H%M%S)
相关推荐
Agent世界1 天前
用 CDP 做发布自动化:四道机器闸门与产物验收
前端·javascript
FungLeo1 天前
成为全栈·Vue 管理后台篇·编辑器图片上传:从文件选择到文章附件关联
前端·vue.js·编辑器·markdown·文件上传·formdata·附件管理
某哈压力大1 天前
SSH 突然 Connection reset?不是密钥坏了,是 OpenSSL 把 sshd 干趴了
前端·node.js·命令行
程序员大阳1 天前
副队长ES6+教程(3)--解构赋值
前端·javascript·es6·赋值·解构
神膘护体小月半1 天前
css - 元素背景图由 hover 触发,初次加载时闪动的解决办法
前端·javascript·css
程序员大阳1 天前
副队长ES6+教程(2)--let 与 const
前端·javascript·es6·const·let·var
deli0071 天前
写满 200GB 后 SSD 为什么掉到 95MB/s?SLC 缓存模型实测
前端
曦樂~1 天前
【Web Development】03JavaScript 基础和事件
开发语言·前端·javascript
deli0071 天前
HTTPS 的锁是怎么挂上的?TLS 1.3 握手 6 步实测
前端
程序员大阳1 天前
副队长ES6+教程(1)--ES6+初识
前端·ecmascript·es6