n8n Docker Compose 部署官方+中文版本插件
Compose 部署配置
部署 n8n 的核心是 docker-compose.yml 文件。本章将提供配置文件的内容以及详细的参数说明。
2.1 参数配置详解
以下表格详细解释了 docker-compose.yml 文件中使用的关键参数及其配置内容。
| 参数 | 配置内容 | 详细说明 |
|---|---|---|
image | n8nio/n8n 或 blowsnow/n8n-chinese | 指定要使用的 Docker 镜像。前者是官方版,后者是中文版。 |
container_name | n8n | 为你的容器指定一个固定的名称,方便管理。 |
restart | always | 确保在 Docker 或服务器重启时,n8n 容器会自动重新启动。 |
ports | - "5678:5678" | 将服务器(主机)的 5678 端口映射到容器的 5678 端口。 |
environment | (环境变量) | 用于配置 n8n 实例的各种参数。 |
GENERIC_TIMEZONE | Asia/Shanghai | (环境变量) 设置时区为上海,确保计划任务和时间正确。 |
NODE_ENV | production | (环境变量) 使用生产模式运行 n8n,以获得更好的性能。 |
N8N_SECURE_COOKIE | false | (环境变量) 解决在局域网内使用 http://[IP或主机名] 访问时的 “secure cookie” 报错问题。 |
N8N_HOST | ooooofish | (环境变量) 告诉 n8n 它的访问主机名是什么。已根据你的服务器 hostname 结果预填。 |
WEBHOOK_URL | http://ooooofish:5678/ | (环境变量) 告诉 n8n 其 Webhook 的公共访问地址。已根据你的主机名预填。 |
N8N_DEFAULT_LOCALE | zh-CN | (环境变量) (仅中文版需要) 设置默认语言为简体中文。 |
volumes | - /home/yuuu/app/n8n:/home/node/.n8n | 将你服务器上的 /home/yuuu/app/n8n 目录挂载到容器内,用于永久保存所有数据。 |
2.2 官方版 docker-compose.yml
如果你想安装官方英文原版,请使用这个配置。
services:n8n:image: n8nio/n8ncontainer_name: n8nrestart: alwaysports:- "5678:5678"environment:- GENERIC_TIMEZONE=Asia/Shanghai- NODE_ENV=production- N8N_SECURE_COOKIE=false- N8N_HOST=ooooofish- WEBHOOK_URL=http://ooooofish:5678/- N8N_PORT=5678- N8N_PROTOCOL=httpvolumes:- /home/yuuu/app/n8n:/home/node/.n8n
2.3 中文版 docker-compose.yml
如果你想安装 blowsnow/n8n-chinese 项目提供的中文汉化版,请使用这个配置。
services:n8n:image: blowsnow/n8n-chinesecontainer_name: n8nrestart: alwaysports:- "5678:5678"environment:- GENERIC_TIMEZONE=Asia/Shanghai- NODE_ENV=production- N8N_DEFAULT_LOCALE=zh-CN- N8N_SECURE_COOKIE=false- N8N_HOST=ooooofish- WEBHOOK_URL=http://ooooofish:5678/- N8N_PORT=5678- N8N_PROTOCOL=httpvolumes:- /home/yuuu/app/n8n:/home/node/.n8n
部署与管理命令
本章包含执行部署的详细步骤,以及管理 n8n 实例的常用 Docker Compose 命令。
3.1 执行部署步骤
请在你的服务器上依次执行以下命令。
-
创建部署目录
为docker-compose.yml文件创建一个专门的目录,并进入该目录。mkdir ~/n8n-deploy cd ~/n8n-deploy -
创建数据目录并授权
你需要手动创建在volumes中指定的目录/home/yuuu/app/n8n,并确保 Docker 有权读写它。sudo mkdir -p /home/yuuu/app/n8n sudo chown $(id -u):$(id -g) /home/yuuu/app/n8n -
创建
docker-compose.yml文件
使用vim在~/n8n-deploy目录中创建文件。vim docker-compose.yml打开
vim后:-
按
i键进入“插入模式”。 -
选择你需要的版本(官方版或中文版),复制其
yaml内容并粘贴进去。 -
按
Esc键退出“插入模式”。 -
输入
:wq然后按回车(Enter)键,保存并退出。
-
-
启动 n8n
执行以下命令,Docker Compose 将在后台启动 n8n 容器。docker-compose up -d
3.2 实例管理命令
所有管理命令都必须在 ~/n8n-deploy 目录(即 docker-compose.yml 文件所在的目录)下执行。
-
启动 n8n
(此命令也会在后台创建并启动容器)docker-compose up -d -
停止 n8n
(此命令只停止容器,不删除它)docker-compose stop -
重启 n8n
(此命令用于重新启动已停止或正在运行的容器)docker-compose restart -
查看实时日志
(用于排查启动失败等问题,按Ctrl + C退出)docker-compose logs -f -
删除 n8n 容器
(此命令会停止并删除容器,但/home/yuuu/app/n8n中的数据会保留)docker-compose down -
更新 n8n 版本
(拉取最新镜像并重新创建容器)docker-compose pull docker-compose up -d -
完全删除 n8n(清除所有数据)
警告:此操作不可逆,将永久删除你的所有 n8n 数据和工作流。-
停止并删除 n8n 容器:
docker-compose down -
手动删除你指定的本地数据目录:
sudo rm -rf /home/yuuu/app/n8n -
(可选) 删除 n8n 镜像:
docker rmi blowsnow/n8n-chinese # 或者 docker rmi n8nio/n8n
-
