وبلاگ
نصب و راهاندازی n8n روی سرور شخصی: راهنمای گام به گام
فهرست مطالب
“تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT”
"تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT"
"با شرکت در این دوره جامع و کاربردی، به راحتی مهارتهای برنامهنویسی پایتون را از سطح مبتدی تا پیشرفته با کمک هوش مصنوعی ChatGPT بیاموزید. این دوره، با بیش از 6 ساعت محتوای آموزشی، شما را قادر میسازد تا به سرعت الگوریتمهای پیچیده را درک کرده و اپلیکیشنهای هوشمند ایجاد کنید. مناسب برای تمامی سطوح با زیرنویس فارسی حرفهای و امکان دانلود و تماشای آنلاین."
ویژگیهای کلیدی:
بدون نیاز به تجربه قبلی برنامهنویسی
زیرنویس فارسی با ترجمه حرفهای
۳۰ ٪ تخفیف ویژه برای دانشجویان و دانش آموزان
0 تا 100 عطرسازی + (30 فرمولاسیون اختصاصی حامی صنعت)
اکانت ChatGPT PLUS یک ماهه با کردیت CODEX
اکانت Gemini Pro هیجده ماهه اختصاصی تضمینی
دوره آموزش Flutter و برنامه نویسی Dart [پروژه محور]
دوره جامع آموزش برنامهنویسی پایتون + هک اخلاقی [با همکاری شاهک]
دوره جامع آموزش فرمولاسیون لوازم آرایشی
دوره جامع علم داده، یادگیری ماشین، یادگیری عمیق و NLP
دوره فوق فشرده مکالمه زبان انگلیسی (ویژه بزرگسالان)
دوره آموزش مکالمه فوق فشرده زبان انگلیسی در 100 قسمت ویدئویی، شامل 6 ترم یکماهه با پیوستگی کامل مطالب: ترم 1 (Elementary)، ترم 2 (Intermediate)، ترم 3 (Advance)، ترم 4 (Professional)، ترم 5 (Fluent speaking)، ترم 6 (Native Speaker). بهترین فرصت برای یادگیری زبان انگلیسی به صورت حرفهای و روان. در حامی صنعت بیاموزید!
شمع سازی و عودسازی با محوریت رایحه درمانی
0 تا 100 ساخت شمع و عود
آموزش آنلاین به همراه پشتیبانی شرکت کنندگان تا شروع درآمدزایی ماهیانه 40 تا 50 میلیون
پشتیبانی تولید محصول و رفع مشکلات احتمالی حین ساخت شمع
دوره ای فوق العاده برای شروع یک کسب و کار خانگی
مدرک: انگلیسی معتبر
کمک به صادرات شمع ها برای شرکت های شمع سازی ثبت شده
6 ماه پشتیبانی همه روزه در گروه پرسش و پاسخ بعد از اتمام دوره و دسترسی به آپدیت های جدید دوره حداقل تا 3 سال
صابون سازی (دستساز و صنعتی)
شرکت حامی صنعت با افتخار دورههای تخصصی صابون سازی خانگی و صنعتی را برگزار میکند. این دورهها با هدف آموزش کامل و عملی تولید انواع صابونهای طبیعی و ارگانیک طراحی شدهاند. شرکتکنندگان در این دورهها با مفاهیم پایه و پیشرفته صابون سازی آشنا میشوند و مهارتهای لازم برای تولید صابونهای باکیفیت را کسب میکنند.
در این دورهها، مباحثی چون ترکیبات مورد استفاده در صابون سازی، روشهای مختلف ساخت صابون، افزودن عصارهها و رنگهای طبیعی، و تکنیکهای بستهبندی و بازاریابی محصولات به طور جامع پوشش داده میشود. همچنین، شرکتکنندگان فرصت خواهند داشت تا به صورت عملی صابونهای متنوعی را تولید کنند و از تجارب اساتید مجرب بهرهمند شوند.
پس از اتمام موفقیتآمیز دوره، به شرکتکنندگان مدرک معتبر پایان دوره به زبان انگلیسی اعطا میشود که میتواند به عنوان مدرک حرفهای در سطح بینالمللی مورد استفاده قرار گیرد. این مدرک نشاندهنده توانمندی و تخصص فرد در زمینه صابون سازی است و میتواند در پیشرفت حرفهای و کسب و کارهای مرتبط بسیار مفید باشد.
برای ثبتنام و کسب اطلاعات بیشتر درباره دورههای صابون سازی خانگی و صنعتی، به وبسایت شرکت حامی صنعت مراجعه کنید و از فرصت بینظیر یادگیری و کسب مهارتهای جدید بهرهمند شوید.
صفر تا صد طراحی دارو
“`html
نصب و راهاندازی n8n روی سرور شخصی: راهنمای گام به گام
n8n یک پلتفرم اتوماسیون گردش کار متنباز قدرتمند است که به شما امکان میدهد بدون نیاز به کدنویسی، فرایندهای مختلف را در برنامهها و سرویسهای مختلف خودکار کنید. با نصب n8n روی سرور شخصی خود، کنترل کاملی بر دادههای خود خواهید داشت و میتوانید گردشکارهای پیچیده را با امنیت و حریم خصوصی بیشتری اجرا کنید. این راهنما، یک راهنمای گام به گام برای نصب و راهاندازی n8n روی سرور شخصی شما، با تمرکز بر جامعه تخصصی و ارائه جزئیات فنی مورد نیاز است.
پیشنیازها
قبل از شروع فرآیند نصب، اطمینان حاصل کنید که موارد زیر را در اختیار دارید:
- یک سرور: یک سرور با سیستم عامل لینوکس (مانند Ubuntu، Debian یا CentOS) با دسترسی SSH.
- دسترسی SSH: دسترسی SSH به سرور با یک کاربر دارای دسترسی sudo.
- Docker و Docker Compose: Docker و Docker Compose باید روی سرور نصب و پیکربندی شده باشند. اگر هنوز این کار را نکردهاید، به بخش مربوطه مراجعه کنید.
- نام دامنه (اختیاری): اگر میخواهید n8n را از طریق یک نام دامنه در دسترس قرار دهید، یک نام دامنه و DNS recordهای مربوطه را پیکربندی کنید.
- Nginx یا Apache (اختیاری): برای پیکربندی reverse proxy و SSL/TLS encryption، به یک وبسرور مانند Nginx یا Apache نیاز دارید.
نصب Docker و Docker Compose
اگر Docker و Docker Compose از قبل روی سرور شما نصب نشدهاند، میتوانید از دستورالعملهای زیر استفاده کنید:
نصب Docker
برای نصب Docker روی Ubuntu یا Debian، دستورات زیر را اجرا کنید:
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
برای CentOS:
sudo yum update
sudo yum install docker
sudo systemctl start docker
sudo systemctl enable docker
نصب Docker Compose
برای نصب Docker Compose، دستورات زیر را اجرا کنید:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
پس از نصب، میتوانید با اجرای دستور `docker –version` و `docker-compose –version` از نصب صحیح آنها اطمینان حاصل کنید.
پیکربندی فایل Docker Compose برای n8n
در این مرحله، یک فایل `docker-compose.yml` برای پیکربندی n8n ایجاد میکنیم. این فایل، نحوه اجرا و پیکربندی کانتینرهای Docker برای n8n را مشخص میکند. یک دایرکتوری برای فایلهای n8n ایجاد کنید و فایل `docker-compose.yml` را در آن دایرکتوری ایجاد کنید:
mkdir n8n
cd n8n
nano docker-compose.yml
محتوای زیر را در فایل `docker-compose.yml` قرار دهید:
version: '3.9'
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_HOST=${N8N_HOST}
- N8N_PORT=${N8N_PORT}
- N8N_PROTOCOL=${N8N_PROTOCOL}
- NODE_ENV=production
- WEBHOOK_URL=${WEBHOOK_URL}
- GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
توضیحات:
- image: n8nio/n8n: مشخص میکند که از image رسمی n8n از Docker Hub استفاده شود.
- restart: always: اطمینان حاصل میکند که کانتینر n8n در صورت crash شدن، به طور خودکار restart شود.
- ports: “5678:5678”: پورت 5678 سرور را به پورت 5678 کانتینر n8n متصل میکند.
- environment: متغیرهای محیطی مورد نیاز n8n را تنظیم میکند.
- volumes: n8n_data:/home/node/.n8n: یک volume به نام `n8n_data` را به دایرکتوری `/.n8n` در کانتینر متصل میکند. این کار باعث میشود که دادههای n8n (مانند گردشکارها و تنظیمات) بین restartها حفظ شوند.
تنظیم متغیرهای محیطی
متغیرهای محیطی مورد نیاز n8n را در یک فایل `.env` تنظیم کنید. در همان دایرکتوری که فایل `docker-compose.yml` قرار دارد، فایل `.env` را ایجاد کنید:
nano .env
محتوای زیر را در فایل `.env` قرار دهید:
N8N_HOST=localhost
N8N_PORT=5678
N8N_PROTOCOL=http
WEBHOOK_URL=http://localhost:5678/
GENERIC_TIMEZONE=Etc/UTC
توضیحات:
- N8N_HOST: نام hostی که n8n روی آن اجرا میشود. اگر از یک نام دامنه استفاده میکنید، آن را در اینجا وارد کنید.
- N8N_PORT: پورتی که n8n روی آن listen میکند.
- N8N_PROTOCOL: پروتکل مورد استفاده برای دسترسی به n8n (http یا https).
- WEBHOOK_URL: URLی که برای webhookها استفاده میشود. این URL باید قابل دسترسی از اینترنت باشد.
- GENERIC_TIMEZONE: منطقه زمانی مورد استفاده n8n.
نکته: اگر از https استفاده میکنید، باید Nginx یا Apache را به عنوان reverse proxy پیکربندی کنید و SSL/TLS encryption را فعال کنید. در این صورت، `N8N_PROTOCOL` را به `https` تغییر دهید و `WEBHOOK_URL` را به URLی که از طریق https قابل دسترسی است، تنظیم کنید.
اجرای n8n با Docker Compose
پس از پیکربندی فایلهای `docker-compose.yml` و `.env`، میتوانید n8n را با استفاده از Docker Compose اجرا کنید. در دایرکتوری `n8n`، دستور زیر را اجرا کنید:
docker-compose up -d
این دستور، کانتینر n8n را در پسزمینه اجرا میکند. میتوانید با استفاده از دستور `docker-compose logs -f` logهای کانتینر را مشاهده کنید.
پس از اجرای موفقیتآمیز دستور، میتوانید با مراجعه به آدرس `http://localhost:5678` (یا آدرس و پورتی که در فایل `.env` تنظیم کردهاید) به رابط کاربری n8n دسترسی پیدا کنید.
پیکربندی Nginx به عنوان Reverse Proxy (اختیاری)
اگر میخواهید n8n را از طریق یک نام دامنه و با استفاده از https در دسترس قرار دهید، باید Nginx یا Apache را به عنوان reverse proxy پیکربندی کنید.
در این بخش، نحوه پیکربندی Nginx را توضیح میدهیم. ابتدا یک فایل configuration برای n8n در دایرکتوری `sites-available` ایجاد کنید:
sudo nano /etc/nginx/sites-available/n8n
محتوای زیر را در فایل `n8n` قرار دهید (مقادیر را با توجه به تنظیمات خود تغییر دهید):
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:5678/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
توضیحات:
- listen 80: مشخص میکند که Nginx روی پورت 80 (HTTP) listen کند.
- server_name yourdomain.com: نام دامنه خود را در اینجا وارد کنید.
- proxy_pass http://localhost:5678/: ترافیک را به آدرس `http://localhost:5678/` (کانتینر n8n) هدایت میکند.
- proxy_set_header: هدرهای HTTP را تنظیم میکند تا WebSocketها به درستی کار کنند.
سپس، این فایل را در دایرکتوری `sites-enabled` لینک کنید:
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
فایل configuration پیشفرض Nginx را غیرفعال کنید:
sudo rm /etc/nginx/sites-enabled/default
Nginx را restart کنید تا تغییرات اعمال شوند:
sudo systemctl restart nginx
در نهایت، باید SSL/TLS encryption را فعال کنید تا ترافیک به صورت امن انتقال یابد. میتوانید از Let’s Encrypt برای دریافت گواهینامه SSL رایگان استفاده کنید:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com
Certbot به طور خودکار Nginx را پیکربندی میکند و گواهینامه SSL را نصب میکند. پس از اتمام این مراحل، میتوانید با مراجعه به آدرس `https://yourdomain.com` به n8n دسترسی پیدا کنید.
بهروزرسانی n8n
برای بهروزرسانی n8n به آخرین نسخه، مراحل زیر را انجام دهید:
- دایرکتوری `n8n` را متوقف کنید:
- آخرین image n8n را pull کنید:
- دایرکتوری `n8n` را دوباره اجرا کنید:
docker-compose down
docker pull n8nio/n8n
docker-compose up -d
با انجام این مراحل، n8n شما به آخرین نسخه بهروزرسانی میشود.
پیکربندی پایگاه داده خارجی (اختیاری)
به طور پیشفرض، n8n از یک پایگاه داده SQLite برای ذخیره دادهها استفاده میکند. با این حال، برای production workloads، توصیه میشود از یک پایگاه داده خارجی مانند PostgreSQL یا MySQL استفاده کنید.
برای پیکربندی یک پایگاه داده خارجی، ابتدا باید یک instance از پایگاه داده مورد نظر خود را ایجاد کنید. سپس، متغیرهای محیطی مربوطه را در فایل `.env` تنظیم کنید:
PostgreSQL:
DB_TYPE=postgresdb
DB_POSTGRESDB_HOST=your_postgres_host
DB_POSTGRESDB_PORT=5432
DB_POSTGRESDB_DATABASE=n8n
DB_POSTGRESDB_USER=n8n
DB_POSTGRESDB_PASSWORD=your_postgres_password
MySQL:
DB_TYPE=mysqldb
DB_MYSQLDB_HOST=your_mysql_host
DB_MYSQLDB_PORT=3306
DB_MYSQLDB_DATABASE=n8n
DB_MYSQLDB_USER=n8n
DB_MYSQLDB_PASSWORD=your_mysql_password
مقادیر را با توجه به تنظیمات پایگاه داده خود تغییر دهید. پس از تنظیم متغیرهای محیطی، کانتینر n8n را restart کنید تا تغییرات اعمال شوند.
عیبیابی
در صورت بروز مشکل در فرآیند نصب و راهاندازی n8n، میتوانید از راهکارهای زیر برای عیبیابی استفاده کنید:
- بررسی logهای کانتینر: با استفاده از دستور `docker-compose logs -f` logهای کانتینر n8n را مشاهده کنید تا پیامهای خطا و هشدارها را بررسی کنید.
- بررسی متغیرهای محیطی: اطمینان حاصل کنید که تمام متغیرهای محیطی مورد نیاز به درستی در فایل `.env` تنظیم شدهاند.
- بررسی پیکربندی Nginx/Apache: اگر از reverse proxy استفاده میکنید، اطمینان حاصل کنید که فایل configuration Nginx یا Apache به درستی پیکربندی شده است.
- جستجو در مستندات n8n: مستندات رسمی n8n حاوی اطلاعات جامعی در مورد نصب، پیکربندی و عیبیابی است.
- پرسش در انجمن n8n: اگر نتوانستید مشکل خود را حل کنید، میتوانید در انجمن رسمی n8n سوال خود را مطرح کنید.
نتیجهگیری
با دنبال کردن این راهنما، میتوانید n8n را با موفقیت روی سرور شخصی خود نصب و راهاندازی کنید. n8n یک ابزار قدرتمند برای اتوماسیون گردش کار است که به شما امکان میدهد فرایندهای مختلف را در برنامهها و سرویسهای مختلف خودکار کنید. با نصب n8n روی سرور شخصی خود، کنترل کاملی بر دادههای خود خواهید داشت و میتوانید گردشکارهای پیچیده را با امنیت و حریم خصوصی بیشتری اجرا کنید. این راهنما با هدف ارائه یک مرجع کامل و جامع برای جامعه تخصصی تهیه شده است و امیدواریم برای شما مفید واقع شود.
“`
“تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT”
"تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT"
"با شرکت در این دوره جامع و کاربردی، به راحتی مهارتهای برنامهنویسی پایتون را از سطح مبتدی تا پیشرفته با کمک هوش مصنوعی ChatGPT بیاموزید. این دوره، با بیش از 6 ساعت محتوای آموزشی، شما را قادر میسازد تا به سرعت الگوریتمهای پیچیده را درک کرده و اپلیکیشنهای هوشمند ایجاد کنید. مناسب برای تمامی سطوح با زیرنویس فارسی حرفهای و امکان دانلود و تماشای آنلاین."
ویژگیهای کلیدی:
بدون نیاز به تجربه قبلی برنامهنویسی
زیرنویس فارسی با ترجمه حرفهای
۳۰ ٪ تخفیف ویژه برای دانشجویان و دانش آموزان