如何在本地运行 n8n:2026 年完整设置指南

Author Avatar
Andrew
AI Perks Team
6,320
如何在本地运行 n8n:2026 年完整设置指南

快速摘要:在本地运行 n8n 需要 npm(Node.js 20.19-24.x)或 Docker。最快的方法是使用 npx n8n 进行即时测试而无需安装,而 Docker 则提供更好的隔离性和生产就绪性。两种方法都能让您完全访问 n8n 的工作流自动化功能,且无重复的云成本。

在本地计算机上设置 n8n 可以消除重复的订阅费用,同时提供对工作流自动化的完全控制。根据 n8n 的官方文档,该平台需要 Node.js 版本在 20.19 到 24.x 之间才能进行 npm 安装,或者使用 Docker 进行容器化部署。

本地托管与云服务之间的选择会影响预算和灵活性。根据社区讨论,本地安装可以处理无限数量的工作流,而云计划则包含基于执行次数的定价(根据一些用户报告,起价为每月 24 美元,可执行 2,500 次)。

本地安装的先决条件

在本地安装 n8n 之前,系统需要根据所选方法安装特定的软件。

npm 安装所需的 Node.js 版本完全取决于您部署的 n8n 版本的具体要求,因为 npm 本身与所有当前支持的 Node.js LTS 版本兼容。官方文档指定了此确切的版本范围以确保兼容性。在终端中运行 node --version 来检查当前版本。

Docker 安装需要 Docker Engine 或 Docker Desktop。n8n 团队推荐大多数自托管需求使用 Docker,因为它提供了清晰的隔离性并避免了操作系统不兼容问题。

系统要求

本地 n8n 实例运行在 Windows、macOS 和 Linux 系统上。官方文档中没有明确的最低 RAM 规格,但工作流的复杂性决定了实际资源需求。

安装初期占用的磁盘空间很小。存储需求会根据工作流数据、执行历史记录和自定义节点包的增长而增加。

本地 n8n 部署的 npm 与 Docker 安装方法的比较

方法 1:使用 npm 运行 n8n

npm 安装提供了最快的本地运行 n8n 的途径。此方法直接在宿主系统上运行,无需容器化。

使用 npx 快速入门

最简单的方法是使用 npx,无需永久安装。打开终端并执行:

npx n8n

此命令将下载所有必需文件并自动启动 n8n。界面将在几秒钟内通过 localhost:5678 访问。

npx 方法非常适合测试和评估。它不需要全局 npm 包或对系统进行永久性更改。

全局 npm 安装

要进行永久安装,全局 npm 包可提供一致的访问:

npm install n8n -g

安装完成后,随时可以通过运行以下命令来启动 n8n:

n8n

n8n 当前的主要稳定版本是 2.x(例如,2.10.4)。Beta 版本可能包含不稳定的功能,应避免用于生产工作流。

配置和数据存储

npm 安装默认将工作流数据存储在 ~/.n8n 目录中。此位置包含凭据、工作流定义和执行历史记录。

环境变量控制 n8n 的行为。设置 N8N_PORT 变量可更改默认端口 5678。其他变量用于配置数据库连接、Webhook URL 和身份验证设置。

方法 2:使用 Docker 运行 n8n

Docker 安装是本地 n8n 托管的推荐方法。官方文档强调 Docker 适用于生产环境的自托管需求。

基本 Docker 运行命令

使用单个 Docker 命令启动 n8n:

docker run -it --rm --name n8n -p 5678:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n

此命令创建一个名为 n8n 的容器,将端口 5678 映射到主机,并将数据持久化到 ~/.n8n 目录中。

-it 标志以交互模式运行容器。删除 --rm 可在停止后保留容器。

用于生产设置的 Docker Compose

Docker Compose 配置为生产环境提供了更好的控制。GitHub 上的 n8n-hosting 存储库包含适用于各种体系结构的即用型 Docker Compose 文件。

一个基本的 docker-compose.yml 配置如下所示:

version: '3.8'
services:
  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=password
    volumes:
      - ~/.n8n:/home/node/.n8n

使用以下命令启动堆栈:

docker-compose up -d

-d 标志以分离模式运行容器,允许您使用终端执行其他任务。

本地 n8n 部署的分步 Docker 安装和配置过程

初始配置和访问

通过任一方法启动 n8n 后,在 Web 浏览器中导航至 localhost:5678。初始设置屏幕会要求输入管理员帐户的电子邮件地址和密码。

第一个用户将成为拥有完整管理权限的实例所有者。之后可以通过用户管理界面添加其他用户。

身份验证设置

为安全起见,即使是本地安装也应启用身份验证。Docker Compose 配置可以直接接受身份验证环境变量:

N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=password

这些变量会激活 HTTP 基本身份验证,要求所有访问尝试都提供凭据。

本地测试自定义节点

官方文档解释了如何在开发过程中测试自定义节点。首先全局安装 n8n,然后构建并链接自定义节点包。

在自定义节点目录中,运行:

npm run build
npm link

然后导航到 n8n 节点目录(通常是 ~/.n8n/custom/)并链接该包:

npm link <node-package-name>

重启实例后,自定义节点将出现在 n8n 界面中。

与 n8n 结合使用的有用自动化资源

如果您正在学习如何在本地运行 n8n 并测试机器上的工作流,您还可以受益于外部助手和模板,这些工具可以更轻松地自动化常见任务。 Get AI Perks 提供了一个工作流模板库和 AI 辅助工具,您可以将其与 n8n 一起使用,或者在自己构建自动化想法之前对其进行原型设计。

使用 Get AI Perks,您可以:

  • 从预建工作流模板开始
  • 获取用于日常逻辑和内容的 AI 辅助
  • 在 n8n 中实现之前探索常见的自动化模式
  • 将模板与您的本地 n8n 设置结合使用

发现 Get AI Perks,找到支持您 n8n 工作流的自动化助手。

故障排除常见问题

端口冲突是最常见的安装问题。如果端口 5678 已经被占用,请停止冲突的服务或使用 N8N_PORT 环境变量更改 n8n 的端口。

Node 版本不兼容

使用 Node.js 版本超出 20.19-24.x 范围会导致安装失败。n8n GitHub 存储库记录了开发人员尝试本地开发环境时遇到的问题,突显了 Node 版本兼容性的重要性。

在排除其他问题之前,请验证 Node 版本兼容性。如有需要,请使用 nvm(Node 版本管理器)切换 Node 版本。

Docker 卷权限错误

~/.n8n 卷挂载的权限问题阻止了数据持久化。Docker 容器以 node 用户身份运行,该用户可能对主机目录没有写入权限。

在启动容器之前,请创建具有适当权限的目录:

mkdir ~/.n8n
chmod 777 ~/.n8n

常见问题解答

n8n 可以离线运行吗?

是的,n8n 在本地工作流方面可以完全离线运行。只有当工作流与外部 API 或云服务交互时,才需要互联网连接。

本地运行 n8n 的成本是多少?

本地安装是免费的。社区版提供所有核心功能,无需许可费。云托管开始时有执行次数限制和月度费用,但根据社区讨论,本地托管完全消除了这些限制。

初学者应该使用 npm 还是 Docker?

测试 n8n 的初学者应从 npx 开始以获得即时访问。Docker 更适合持续使用,因为它提供了更好的隔离性和更轻松的升级。

n8n 在本地存储工作流数据的位置?

默认数据目录是用户主文件夹下的 ~/.n8n。此位置包含 SQLite 数据库文件、凭据和执行日志,除非另行配置。

一台机器上可以运行多个 n8n 实例吗?

是的,但每个实例都需要唯一的端口。为每个实例设置不同的端口,使用 N8N_PORT 环境变量。Docker 通过在单独的容器中进行端口映射,使此操作更容易。

本地安装的更新如何进行?

npm 安装通过 npm update -g n8n 或 npm install -g n8n@latest 进行更新。Docker 用户使用 docker pull n8nio/n8n 拉取最新镜像,然后重新创建容器。更新前请务必备份 ~/.n8n 目录。

生产环境考虑

n8n 官方文档强调,自托管需要技术知识。设置服务器、管理资源和保护应用程序需要系统管理经验。

对于生产部署,Docker Compose 提供了基础。添加像 nginx 或 Caddy 这样的反向代理以支持 HTTPS。n8n-hosting 存储库包含可用于部署的 Caddy 配置。

数据库选择对于繁重的工作量很重要。默认的 SQLite 数据库适用于中等使用量,但根据官方指导,PostgreSQL 为高吞吐量自动化提供了更好的性能。

做出选择:本地 vs 云

本地 n8n 托管适合拥有技术能力和特定安全要求的团队。数据保留在受控的基础设施上,并且执行次数限制消失。

但是,本地托管需要维护、备份和监控。云托管将这些职责转移给 n8n 的基础设施团队。请查阅官方网站了解当前的云定价和功能比较。

在本地运行 n8n 可为您提供对工作流自动化基础设施的完全控制。无论是使用 npm 进行快速测试还是使用 Docker 进行生产部署,这两种方法都能以无重复成本的方式交付完整平台。从 npx 开始进行即时探索,然后在工作流趋向生产用途时过渡到 Docker。

AI Perks

AI Perks 提供 AI 工具、云服务和 API 的独家折扣、积分和优惠,帮助初创企业和开发者节省开支。

AI Perks Cards

This content is for informational purposes only and may contain inaccuracies. Credit programs, amounts, and eligibility requirements change frequently. Always verify details directly with the provider.