👍Docker 方式本地部署 n8n

type
status
date
slug
summary
tags
category
icon
password

使用 Docker 本地部署 n8n

Docker 安装优势

  • 在干净的环境中安装 n8n。
  • 更易于配置你偏好的数据库。
  • 避免不同操作系统导致的问题,Docker 提供统一环境。
  • 避免工具和系统间的兼容性问题。
  • 更便于迁移到新主机或新环境。
你也可以通过 Docker Compose 使用 n8n,不同架构下的配置文件可在 n8n-hosting 仓库中找到。

本地部署前的知识要求

自托管部署 n8n 需要一定的技术知识,包括:
  • 配置服务器和容器
  • 管理应用资源与扩展
  • 保障服务器与应用安全
  • 配置 n8n
⚠️ n8n 推荐具有经验的用户自托管。如果你没有管理服务器的经验,建议使用 n8n Cloud。

前提条件

请先安装 Docker Desktop。

Linux 用户提示

Docker Desktop 仅适用于 Mac 和 Windows。Linux 用户需手动为对应发行版安装 Docker Engine 与 Docker Compose。

n8n 版本说明

n8n 每周发布一次小版本。
  • latest:适用于生产环境
  • next:最新 beta 版本,可能不稳定
当前版本:
  • latest:1.91.3
  • next:1.92.2

启动 n8n

  • 创建数据卷 n8n_data 用于本地持久化数据。
  • 镜像通过端口 5678 暴露容器。
访问地址:http://localhost:5678

使用 PostgreSQL

n8n 默认使用 SQLite 存储数据,也支持 PostgreSQL,通过环境变量进行配置。
即使使用 PostgreSQL,也 强烈建议保留 /home/node/.n8n 目录,用于保存用户数据及加密密钥(对凭据解密非常关键)。
如果启动时找不到该目录,n8n 会自动创建一个新的目录,此时原有凭据将无法使用。
❗你也可以通过 N8N_ENCRYPTION_KEY 环境变量显式提供加密密钥,无需挂载本地目录。
使用 PostgreSQL 示例:
可在 n8n-hosting 仓库中找到完整的 PostgreSQL Docker Compose 示例。

设置时区

你可以通过设置环境变量定义 n8n 使用的时区。
  • GENERIC_TIMEZONE:n8n 节点(如定时触发器)使用的时区
  • TZ:系统时区,用于 shell 命令等

更新 n8n

方法一:通过 Docker Desktop

在 "Images" 页签点击 "Pull" 拉取最新版本。

方法二:通过命令行

更新后重启容器:

更新 Docker Compose

如果你使用 docker-compose.yml 文件部署,按以下步骤更新:

使用 tunnel 进行外部服务测试

⚠️ 仅适用于本地开发和测试,请勿用于生产环境。
n8n 提供 tunnel 服务,用于接收外部服务(如 GitHub)的 webhook 请求。

延伸阅读

更多 Docker 安装说明请参阅:n8n Docker 镜像 README
上一篇
欢迎来到n8n中文社区
下一篇
NPM 方式本地部署 n8n
Loading...