n8n - 在服务器部署安装

1- 前置准备工作

虽然 n8n 部署简单,但在互联网上搞一台服务器,并让它达到可以安装(部署)任何程序的状态本身就是困难的,毕竟大多数人现在连重装系统都会有些困难。

所以,如果你是纯小白,只为学习 n8n 而来,建议你先选择其他部署方式:🚢选择适合的 n8n 安装部署方式

如果你确实要在一台公网服务器上部署 n8n,你需要首先参考外部教程完成本章节中【前置准备工作】完成服务器、域名的购买、设置以及环境部署。

本节的实际内容,会从你安装完成了 1Panel 服务器面板开始。

如果你在看完本篇之后,感觉自己运维实在是太麻烦,也可以选择一键开箱使用,免运维的 Zeabur,或 n8n 官方云服务版本。当然,价格肯定是比自己运维要贵一点点的。

1.1- 域名

首先,购买一个域名。啥域名都可以,别在国内买,除非你想备案。如果你是纯新手,这里推荐全球最大的域名注册商 Godaddy,有中文界面、中文客服,支持支付宝付款。

它的性价比并不高,我推荐它纯粹是因为服务完善,适合新手。

1.2- 服务器

你需要一台服务器来运行 n8n,如果你是纯新手,我们推荐使用 CloudCone,在性能方面如果你不是让 Workflow 一直跑,一般 2v2GB RAM 的服务器就够用了,一年的成本只有 30 刀左右。

你可以用中国大陆的服务器,但这意味着你的域名需要备案,且后期你的 n8n 将无法接入 Google 和 OpenAI 的 AI 服务。

值得注意的是,如果你购买阿里云或腾讯云的香港节点,虽然不需要备案,但同样不能接入 Google 和 OpenAI 的 AI 服务。

1.3- 将域名指向你的服务器

如果你按照上两步在 Godaddy 购买了域名,在 CloudCone 购买了服务器,那么你接下来需要将两者结合。也就是将你的域名指向你的服务器,你可以在 CloudCone 后台找到你的服务器 IP 地址:

notion image

IP 地址是一串型如 77.79.777.2 的数字(数字应在 0-255 之间,此处为示例),得到这串 IP 之后,你需要遵循这个教程,在 Godday 里添加一个 A 记录:

如果这一步有任何困难,你可以咨询 GoDaddy 的客服。

1.4- 部署 1Panel

notion image

在 CloudCone 的服务器面板,有一个 VNC 按钮,点击后,将进入一个命令行界面。

接下来,请完全遵照 1Panel 的官方文档,在你的服务器上安装一个 1Panel 面板。

如果你是真真正正的纯小白,你还可以完整的看一遍 1Panel 官方的 B 站教程,该教程会教你如何安装、使用、更新、维护 1Panel。

对于纯小白来说,我真的建议看完 1Panel 的视频教程在继续部署 n8n,否则后续你可能会遇到各种基础问题需要返回来学习。

当然,如果你不是新手,也可以选择宝塔面板,两款产品差不多的:

2- 在 1Panel 中部署 n8n

notion image

如果你见到了这个页面,证明你可以开始部署 n8n 了,否则请完成【前置准备工作】。

notion image

2.1- 第一步:拉取镜像

在 1Panel 里,进入 容器>镜像>拉取镜像,然后在镜像名处输入 n8nio/n8n。

notion image

2.2- 第二步:创建永久化目录

在 1Panel 里,进入 主机>文件,然后在 /opt/1panel/apps 目录下创建一个 n8n 目录。然后再创建一个 n8ndata 目录。

n8n 这个目录,是留给 n8n 程序写数据的,也就是你的 Workflow、运行日志、第三方 API 凭证都在这个目录里,以后备份的时候备份这个目录,就能保证 n8n 整体数据不丢。

n8ndata 这个目录,是用来我们自己方便往里存文件用的,比如你以后要用 n8n 生成或读取 Excel,都需要把文件上传到这个目录。

如果你的 Linux 操作系统与我不同,具体的路径可能不同,但整体来说,放在 1panel 面板的 apps 目录下方便管理就行。

记住新建的这两个目录的地址,并将其权限设置为 777。

2.3- 第三步:创建容器

在 1panel 里进入 容器>容器,创建一个新的容器:

notion image

这里有许多参数需要设置,我将其列在这里:

参数 说明
名称 n8n 你可以随便起,记住就行
镜像 n8nio/n8n:latest 如果你第一步正确,这里可以在下拉菜单里看到。
端口 暴露端口 这里要添加两个端口
服务器 127.0.0.1:5678
容器 5678
协议 tcp
服务器 127.0.0.1:5678
容器 5678
协议 udp
网络 1panel-network
ipv4 172.18.0.6 你可以修改最后一段(6 的部分),选个没被占用的即可。
挂载 本机目录:/opt/1panel/apps/n8n
权限:读写
容器目录:/home/node/.n8n
-————
本机目录:/opt/1panel/apps/n8ndata
权限:读写
容器目录:/home/node/n8ndata
你需要在这里点一下添加,然后添加两个本机目录(而不是挂载卷)。
环境变量 N8N_HOST=xxxx.com
WEBHOOK_URL=https://
GENERIC_TIMEZONE=Asia/Shanghai
xxxx.com 为你买的域名,如果你想在二级域名运行 n8n,那就填写二级域名。
WEBHOOK_URLN8N_HOST 的区别就是一个有协议头,一个没有。
GENERIC_TIMEZONE 是时区。

2.3.1- 适用于 1panel 的环境变量格式

2.3.1.1- 把下面的内容添加到安装 docker-compose 中

N8N_HOST: n8n.baoyu2023.top
WEBHOOK_URL: https://n8n.baoyu2023.top
GENERIC_TIMEZONE: Asia/Shanghai

2.4- 第四步:创建网站

notion image

在 1panel 面板中,进入 网站>网站>创建网站

在第一次使用 1panel 的网站功能时,可能会被要求安装 OpenResty,按照官方提示引导操作即可。如遇到问题,可参考 1panel 文档:‣

在创建网站界面,选择 " 反向代理 “(最上面)类型,然后在主域名里输入你购买的域名,代号不用管,” 监听 IPV6" 可开可不开。

代理地址的协议头选择 http,地址输入 localhost:5678。

然后点击确认,创建网站。

2.5- 第五步:设置 HTTPS 访问

notion image

进入 1panel 的 网站>证书>创建证书,如果此前的步骤正常,你可以从 从网站中获取 那里找到 n8n 的网站。

然后,你需要根据提示创建一个新的 Acme 账户,验证方式选择 http。如果你的域名存放在 Godaddy、阿里云、DNSPod 或 Cloudflare,也可以选择用 DNS 账号验证,然后根据这个文档的指引操作:

。稍微复杂一点,但后续创建其他网站时会更加方便。

自动续签的勾一定要选上,不然每三个月你要重新操作一次。

notion image

notion image

然后,回到 网站>网站>n8n网站,点击右边的配置,进入网站配置界面,再点击 HTTPS 选项卡。

打开 HTTPS,选择 访问 HTTP 自动跳转到 HTTPS ,选择你刚才申请的证书,其他的部分不用修改,点保存。

2.6- 第六步:初始化 n8n

notion image

如果以上全部顺利,现在你就可以通过你的域名访问部署好的 n8n 了,接下来就要进入 n8n 的设置环节了。

根据界面,填入邮箱、姓、名、密码,即可创建你的第一个账号。这个账号也将是 n8n 的超级管理员,可以创建其他账号,并且权限无法更改,一定要记好你的账号密码,私有部署的 n8n 无法找回账户密码,如果这个账号的密码忘记了,只能删除重装了。

notion image

首次登录还会让你填个调研问卷,随便填或按照你的实际情况填就行,然后就会进入 Editor 界面,证明你的部署大功告成:

notion image

如果你是纯小白,并且是第一次使用服务器部署开源程序,我建议你在完成 n8n 的部署之后,立刻按照以下方式增强服务器安全:

如果你已经完成了安全设置,你可以开始:

3- 🔐保障私有部署环境安全的基本操作

如果你是个纯小白,依照本教程的推荐,首次购买了服务器、安装了 1Panel、部署了 n8n……

那你就离被黑客入侵不远了。

公网上的服务器在不设防的情况下,约等于肉鸡。因此,你应在第一时间完成以下防护。

我们假定你按照本教程的方法使用了 1Panel 作为服务器管理工具,那么你应当:

3.1- 开启 1Panel 的二因素验证(非常重要)

简单来说,任何公网上的账号\密码界面,都可能被黑客通过简单的反复重试攻破。为了解决这一点,你需要添加一个额外的二因素认证,在大多数商业平台上,这个二因素认证是手机号/短信。

但在自己的服务器上,一般用动态密码来实现。

你可以按照 1Panel 官方文档的提示,开启该面板的二因素验证:

面板设置 - 1Panel 文档

3.2- 开启 n8n 的二因素验证(非常重要)

理由同上,你还需要在 n8n 里开启二因素验证。由于 n8n 支持安装第三方 npm 节点,因此黑客如果攻破了你的 n8n 不止能够随意删改你的 n8n Workflow,还有可能直接攻破你的服务器,控制一切。

notion image

n8n 的二因素验证在 Settings>Personal>Security 下,根据提示操作即可。

需要注意的是,n8n 的二因素验证是每个用户独立的,如果你还给你的朋友开设了 n8n 账户,你需要敦促他也开通二因素验证!