n8n 托管在 Hetzner 云平台上
n8n 托管在 Hetzner 云平台上

n8n 托管在 Hetzner 云平台上

0 股票
0
0
0
0

n8n 托管在 Hetzner 云平台上

本托管指南将向您展示如何在您自己的 Hetzner 云服务器上托管 n8n。本指南使用以下工具:

  • 使用 Caddy(反向代理)通过互联网访问服务器。.
  • 使用 Docker Compose 创建和定义应用程序组件以及它们如何协同工作。.

创建服务器

  1. 进入 控制板 网站已创建。 .
  2. 购买Hetzner的服务。.

登录您的服务器。

要继续本指南,您需要使用终端并通过 SSH 登录到服务器。.

安装 Docker Compose

请使用以下命令进行安装:

apt update && apt -y upgrade
apt install docker-compose-plugin

Clone configuration repository

Docker Compose، n8n و Caddy به یک سری پوشه و فایل پیکربندی نیاز دارند. می‌توانید این فایل‌ها را از این مخزن در پوشه کاربر root سرور کپی کنید. مراحل زیر به شما می‌گوید کدام فایل را تغییر دهید و چه تغییراتی ایجاد کنید.

git clone https://github.com/n8n-io/n8n-docker-caddy.git

و دایرکتوری را به ریشه مخزنی که کلون کرده‌اید تغییر دهید:

cd n8n-docker-caddy

پوشه‌ها و فایل‌های پیش‌فرض

سیستم عامل میزبان (سرور) دو پوشه‌ای که ایجاد کرده‌اید را در کانتینرهای داکر کپی می‌کند تا آنها را در دسترس داکر قرار دهد. این دو پوشه عبارتند از:

  • caddy_config: فایل‌های پیکربندی Caddy را در خود نگه می‌دارد.
  • local_files: پوشه‌ای برای فایل‌هایی که با استفاده از n8n آپلود یا اضافه می‌کنید.

ایجاد Docker volume

برای حفظ حافظه پنهان Caddy بین راه‌اندازی‌های مجدد و افزایش سرعت زمان شروع، یک حجم Docker ایجاد کنید که Docker بین راه‌اندازی‌های مجدد از آن استفاده مجدد کند:

docker volume create caddy_data

یک درایو داکر برای داده‌های n8n ایجاد کنید:

sudo docker volume create n8n_data

تنظیم دی‌ان‌اس

n8n معمولاً روی یک زیردامنه عمل می‌کند. یک رکورد DNS با ارائه‌دهنده خود برای زیردامنه ایجاد کنید و آن را به آدرس IP سرور ارجاع دهید. مراحل دقیق این کار به ارائه‌دهنده DNS شما بستگی دارد، اما معمولاً باید یک رکورد “A” جدید برای زیردامنه n8n ایجاد کنید.

پورت های باز (Open ports)

n8n به عنوان یک برنامه وب اجرا می‌شود، بنابراین سرور باید اجازه دسترسی ورودی به ترافیک را از طریق پورت ۸۰ برای ترافیک غیرایمن و از طریق پورت ۴۴۳ برای ترافیک امن بدهد.

با اجرای دو دستور زیر، پورت‌های زیر را در فایروال سرور باز کنید:

sudo ufw allow 80
sudo ufw allow 443

پیکربندی n8n

n8n برای انتقال به برنامه‌ای که در کانتینر Docker اجرا می‌شود، به تعدادی متغیر محیطی نیاز دارد. فایل .env مثال شامل متغیرهایی است که باید آنها را با مقادیر دلخواه خود جایگزین کنید.

فایل را با دستور زیر باز کنید:

nano .env

این فایل شامل کامنت‌های درون‌خطی است تا به شما کمک کند بدانید چه چیزی را باید تغییر دهید.

فایل Docker Compose

فایل Docker Compose (docker-compose.yml) سرویس‌هایی را که برنامه به آنها نیاز دارد، تعریف می‌کند که در این مورد Caddy و n8n هستند.

  • تعریف سرویس Caddy، پورت‌هایی که از آنها استفاده می‌کند و والیوم‌های محلی که باید در کانتینرها کپی شوند را تعریف می‌کند.
  • تعریف سرویس n8n پورت‌هایی که استفاده می‌کند، متغیرهای محیطی که n8n باید اجرا کند (برخی در فایل .env تعریف شده‌اند) و حجم‌هایی که باید در کانتینرها کپی کند را تعریف می‌کند.

فایل Docker Compose از متغیرهای محیطی تنظیم‌شده در فایل .env استفاده می‌کند، بنابراین نیازی به تغییر محتوای آن نیست، اما برای بررسی، دستور زیر را اجرا کنید:

nano docker-compose.yml

پیکربندی Caddy

Caddy باید بداند که به کدام دامنه‌ها باید سرویس دهد و کدام پورت را در معرض دنیای خارج قرار دهد. فایل Caddyfile را در پوشه caddy_config ویرایش کنید.

nano caddy_config/Caddyfile

زیردامنه‌ی جایگزین را به نام خود تغییر دهید. اگر مراحل نامگذاری زیردامنه n8n را دنبال کرده باشید، دامنه‌ی کامل شما مشابه n8n.example.com خواهد بود. n8n در تنظیم reverse_proxy به Caddy می‌گوید که از تعریف سرویس تعریف شده در فایل docker-compose.yml استفاده کند:

n8n.<domain>.<suffix> 
{
  reverse_proxy n8n:5678 
  {
   flush_interval -1
  }
}

Start Docker Compose

n8n و Caddy را با دستور زیر شروع کنید:

docker compose up -d

این دستور ممکن است چند دقیقه طول بکشد .

آزمایش مراحل انجلم شده

در مرورگر خود، URL تشکیل شده از زیر دامنه و نام دامنه که قبلاً تعریف شده است را باز کنید. نام کاربری و رمز عبوری که قبلاً تعریف شده است را وارد کنید، و باید بتوانید به n8n دسترسی پیدا کنید.

متوقف کردن n8n and Caddy

شما می‌توانید n8n و Caddy را با دستور زیر متوقف کنید:

sudo docker compose stop

به روز رسانی یا Update

اگر n8n را با استفاده از فایل Docker Compose اجرا می‌کنید، برای به‌روزرسانی n8n این مراحل را دنبال کنید:

# Navigate to the directory containing your docker compose file
cd </path/to/your/compose/file/directory>

# Pull latest version
docker compose pull

# Stop and remove older version
docker compose down

# Start the container
docker compose up -d

 

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注


您可能也喜欢
如何删除 Docker 镜像、容器和卷

Docker 管理和清理专家指南

在当今云原生架构、微服务和容器化已成为软件基础设施主要标准的时代,Docker 的使用在服务部署的稳定性、可扩展性和速度方面发挥着关键作用。然而,尽管 Docker 为服务器管理员和 DevOps 工程师带来了诸多好处,但始终存在一个重大挑战:随着时间的推移,未使用的资源会不断累积。.
如何在 Ubuntu 24.04 上安装 Cockpit

如何在 Ubuntu 24.04 上安装 Cockpit

Cockpit 是一个基于 Web 的服务器管理面板,它以简洁的图形化方式监控和管理服务、存储、日志和用户。在 VPS 上使用 Cockpit,系统管理员无需使用命令行即可执行许多服务器管理任务。下面,我们将逐步指导您如何安装、配置安全性和访问 Cockpit。.
亚马逊弹性计算云

Amazon EC2(弹性计算云)——面向开发人员和工程师的专家指南

在数字化转型时代,云基础设施是企业技术支持的主要支柱。Amazon EC2(弹性计算云)是 AWS 生态系统的关键组成部分,它使您能够灵活、可扩展且完全掌控地部署虚拟服务器。本文将深入介绍该服务、技术特性、实例模型、最佳实践以及购买流程。