میزبانی n8n در فضای ابری هتزنر

0 اشتراک گذاری
0
0
0
0

میزبانی n8n در فضای ابری هتزنر

این راهنمای میزبانی به شما نشان می‌دهد که چگونه n8n را روی یک سرور ابری Hetzner خود میزبانی کنید. این راهنما از موارد زیر استفاده می‌کند:

  • Caddy (یک پروکسی معکوس) برای دسترسی به سرور از طریق اینترنت.
  • Docker Compose برای ایجاد و تعریف اجزای برنامه و نحوه همکاری آنها.

ایجاد یک سرور

  1. وارد پنل سایت شده .
  2. یک سرویس هتزنر خریداری کنید.

وارد سرور خود شوید

ادامه‌ی این راهنما مستلزم آن است که با استفاده از یک ترمینال و از طریق 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

 

[تعداد: 0   میانگین: 0/5]
دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شاید دوست داشته باشید

Three.js چیست؟

مقدمه Three.js کارهای زیادی انجام می دهد و می تواند تا حدودی گیج کننده باشد که چگونه با…