type
status
date
slug
summary
tags
category
icon
password
本过程基于Ubuntu Linux版本
如果已经安装了Docker和Docker-Compose,那么可以从步骤3开始。
可以在n8n-hosting存储库中找到适用于各种架构的Docker Compose配置。
自托管知识前提条件 自托管 n8n 需要技术知识,包括:
- 设置和配置服务器和容器
- 管理应用程序资源和扩展
- 保护服务器和应用程序
- 配置 n8n
1.安装Docker和Docker Compose#
Docker和Docker Compose 的安装方式可能因您使用的Linux发行版而异。您可以在Docker和Docker Compose安装文档中找到详细说明。以下示例适用于Ubuntu:
通过键入以下内容验证Docker和Docker Compose是否可用:
2.可选:非root用户访问#
您可以选择授予访问权限以在没有命令的情况下运行Docker
sudo
。要授予您当前登录的用户访问权限(假设他们有
sudo
访问权限),请运行:要授予其他用户访问权限,请键入以下内容,并替换
<USER_TO_RUN_DOCKER>
为适当的用户名:您需要
exec sg docker newgrp
从该用户的任何现有会话运行才能访问新的组权限。您可以通过输入以下内容来验证当前会话是否识别该
docker
组:3. DNS设置
要在线或在网络上托管 n8n,请创建指向您的服务器的专用子域。
添加A记录以相应地路由子域:
- 类型:A
- 名称:(
n8n
或其他子域名)
- IP地址:(实际的服务器IP地址)
4.创建.env
文件#
创建一个项目目录来存储您的n8n环境配置和Docker Compose文件并在其中导航:
在目录中
n8n-compose
,创建一个.env
文件来自定义n8n实例的详细信息。请根据自己的信息进行更改:5.创建本地文件目录#
在您的项目目录中,创建一个名为的目录,
local-files
用于在n8n实例和主机系统之间共享文件(例如,使用从磁盘节点读取/写入文件):下面的Docker Compose文件可以自动创建此目录,但手动执行可确保以正确的所有权和权限创建它。
6.创建Docker Compose文件#
创建一个
docker-compose.yml
文件。将以下内容粘贴到文件中:上述Docker Compose文件配置了两个容器:一个用于n8n,一个用于运行traefik(一个用于管理 TLS/SSL证书和处理路由的应用程序代理)。
它还创建并挂载了两个Docker数据卷,并挂载了
local-files
您之前创建的目录:姓名 | 类型 | 集装箱安装 | 描述 |
n8n_data | 数据卷 | /home/node/.n8n | n8n保存其SQLite数据库文件和加密密钥的位置。 |
traefik_data | 数据卷 | /letsencrypt | traefik保存TLS/SSL证书数据的位置。 |
./local-files | 文件目录 | /files | n8n实例与主机共享的本地目录。在n8n中,使用 /files 路径来读取和写入此目录。 |
7.启动Docker Compose
您现在可以通过输入以下命令来启动 n8n:
要停止容器,请输入:
8.完成
现在,可以使用文件配置中定义的子域名+域名组合访问n8n
.env
。上述示例将生成https://n8n.example.com
。n8n只能通过安全的 HTTPS 访问,而不能通过普通的HTTP访问。
有关n8n的安装或者使用上的问题,欢迎在底部评论区留言,一起交流~