Language: kk
VPS-тегі n8n: артық қол еңбегінсіз өз автоматтандыру платформаңыз
Сайттан сұрау түседі. n8n деректерді тексереді, қайталанатын жазбаларды іздейді, мәміле жасайды, AI көмегімен жауап жобасын дайындайды және Telegram арқылы менеджерге хабарлайды. Адам браузер қойындылары арасында дерек тасымалдау үшін емес, тек шешім қажет болғанда араласады.
Төменде n8n қалай жұмыс істейтінін және оны Docker Compose, PostgreSQL, HTTPS және оқшауланған код орындау арқылы VPS-ке қалай орнату керегін қарастырамыз.
n8n-ді жеті қадамда іске қосу
Іске қосудың ең аз жоспары:
- VPS жасаңыз және субдоменді оған бағыттаңыз, мысалы
n8n.example.com. - Docker және Docker Compose орнатыңыз.
- n8n-ді PostgreSQL, сыртқы тапсырма орындаушысы және Caddy-мен іске қосыңыз.
- Интерфейсті HTTPS арқылы ашып, иесі аккаунтын жасаңыз.
- Telegram, CRM, электрондық поштаны немесе кез келген сыртқы API-ді қосыңыз.
- Қателерді өңдеуді және орындалу деректерін сақтау мерзімін реттеңіз.
- Дерекқордың, деректердің және шифрлау кілтінің сақтық көшірмесін автоматтандырыңыз.
Шағын өндірістік орнату үшін 2 vCPU және 4 GB RAM-нан бастау орынды. Тестілеуге 2 GB жиі жеткілікті, бірақ PostgreSQL, Docker және қатар орындалатын процестер қалған ресурсты тез жұмсайды.
n8n деген не және ол қалай жұмыс істейді
n8n — жұмыс процестерін автоматтандыру платформасы. Жұмыс процесі түйіндерден құралады: біреуі процесті бастайды, келесі түйіндер деректерді алады әрі түрлендіреді, соңғы түйін әрекетті орындайды.
Қарапайым жұмыс процесі мынадай:
Webhook → data validation → CRM → Telegram → website response
Тізбек webhook, жоспар, электрондық хат, хабарлама немесе сыртқы қызметтегі оқиға арқылы іске қосылуы мүмкін. Түйіндер арасында шарттар, циклдер, сүзгілер, күту және қателерді өңдеу қолжетімді.
n8n-нің артықшылықтарының бірі — автоматтандыру дайын интеграциялармен шектелмейді. HTTP Request арқылы API-і бар кез келген қызметті шақыруға, ал Code түйінінде JavaScript немесе Python көмегімен арнайы логика жазуға болады. Сондықтан n8n қарапайым no-code құрастырғыш пен арнайы серверлік кодтың арасындағы шешім болып саналады.
Неліктен бұл дерек жіберуден әлдеқайда көп
n8n процесс бірнеше жүйені қамтып, шешім қабылдауды қажет еткенде пайдалы:
form → validation → duplicate search → AI assessment → manager approval → CRM
Адамды тек бақылау нүктесінде қалдыруға болады. Мысалы, AI жауап дайындайды, бірақ хабарлама клиентке қызметкер мақұлдағаннан кейін ғана жіберіледі.
Жиі кездесетін қолдану жағдайлары:
- сату және қолдау: сұрауларды жинау, лидтерді бөлу және мәмілелер жасау;
- контент және AI: жобалар дайындау, өтініштерді жіктеу және мақұлданғаннан кейін жариялау;
- DevOps: істен шығу туралы хабарламалар, Git webhook-тары және API тексерулері;
- ішкі операциялар: электрондық кестелерді, поштаны, күнтізбелерді және корпоративтік жүйелерді синхрондау.
Self-hosted орнату процесс пен дерекқорды басқаруға мүмкіндік береді, бірақ сыртқы қызметтерді жергілікті етпейді. Telegram-ға, CRM-ге немесе бұлттағы AI моделіне жіберілген деректер VPS-тен шығады.
n8n Cloud немесе жеке серверіңіз
| Параметр | n8n Cloud | VPS-тегі n8n |
|---|---|---|
| Іске қосу | Серверді реттеу қажет емес | Домен, Docker және HTTPS қажет |
| Жаңартулар | n8n басқарады | Иесі басқарады |
| Дерекқор және файлдар | Қызмет инфрақұрылымында | Таңдалған серверде |
| Масштабтау | Бұлттық жоспарға сай | Жеке реттеледі |
| Жауапкершілік | Әкімшілік жұмыс аз | Сақтық көшірме, қауіпсіздік және мониторинг иесінің жауапкершілігінде |
| Кімге қолайлы | DevOps-сыз жылдам бастауға | Бақылау, бейімдеу және үнемі жұмыс істейтін процестерге |
Community Edition нұсқасын жеке және ішкі бизнес процестері үшін өз серверіңізде тегін self-hosted етуге болады. Бірақ n8n дәстүрлі ашық код лицензиясымен емес, fair-code Sustainable Use License лицензиясымен таратылады. Ол ішкі пайдалануға және өзгертуге рұқсат береді, алайда n8n-ді жай орналастырып, өз логотипіңізді қосып, қолжетімділікті дербес SaaS ретінде сатуға рұқсат етпейді. Мұндай өнім үшін лицензия шарттарын бөлек тексеру қажет.
n8n серверіне қойылатын талаптар
Жүктеме дерек көлеміне, қатар орындалуға және операция түріне байланысты. Файлдар, ұзын тізімдер, Code түйіндері және AI процестері API арасында шағын JSON пакеттерін тасымалдағаннан гөрі көбірек жад талап етеді.
| Сценарий | Бастапқы конфигурация |
|---|---|
| Тесттер және жеке мәтіндік жұмыс процестері | 1 vCPU, 2 GB RAM, 20 GB NVMe |
| Шағын өндірістік орнату | 2 vCPU, 4 GB RAM, 25–40 GB NVMe |
| Қатар процестер, AI немесе файлдар | 4 vCPU, 8 GB RAM немесе одан көп |
| Queue mode ішіндегі бірнеше worker процесі | Орындалу көлеміне қарай есептеледі |
SQLite үйренуге және бір данадан тұратын шағын орнатуға жарайды. PostgreSQL өндірістік ортаға ыңғайлырақ: сақтық көшірме алу оңай, кейін queue mode режиміне көшу жеңілірек.
n8n-ді VPS-ке қалай орнатуға болады
Бұл мысалда Ubuntu 24.04, PostgreSQL, Caddy және сыртқы тапсырма орындаушысы қолданылады. n8n.example.com пен уақыт белдеуін өз мәндеріңізге ауыстырыңыз.
1. DNS-ті реттеп, серверді дайындаңыз
VPS-тің IPv4 адресіне бағытталған A DNS жазбасын жасаңыз, кейін SSH арқылы қосылыңыз:
ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y ca-certificates curl ufw opensslDocker Engine мен Compose плагинін ресми репозиторийден орнатыңыз:
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
-o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
cat > /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin
docker compose versionТек SSH, HTTP және HTTPS-ке ғана рұқсат беріңіз:
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enableЖаңа қосылымның жұмыс істейтініне көз жеткізбей, ағымдағы SSH сеансын жаппаңыз.
2. Орта айнымалыларын жасаңыз
Каталогты дайындаңыз:
mkdir -p /opt/n8n
cd /opt/n8n.env файлын жасаңыз. Төмендегі командалар PostgreSQL, n8n шифрлауы және тапсырма орындаушысы үшін бөлек кездейсоқ құпияларды бірден жасайды:
cat > .env <<EOF
N8N_VERSION=stable
N8N_HOST=n8n.example.com
GENERIC_TIMEZONE=Europe/Berlin
POSTGRES_DB=n8n
POSTGRES_USER=n8n
POSTGRES_PASSWORD=$(openssl rand -hex 32)
N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)
RUNNERS_AUTH_TOKEN=$(openssl rand -hex 32)
EOF
chmod 600 .envstable тегі алғашқы іске қосуға ыңғайлы. Орнатуды тексергеннен кейін n8n-нің нақты нұсқасын бекіткен дұрыс, сонда келесі image жаңартуы күтпеген уақытта орындалмайды.
N8N_ENCRYPTION_KEY жоғалмауы керек. n8n сақталған парольдерді, токендерді және басқа тіркелгі деректерін шифрлау үшін осы кілтті пайдаланады. Егер PostgreSQL-ді кілтсіз ғана қалпына келтірсеңіз, жазбалар дерекқорда қалады, бірақ n8n оларды оқи алмайды.
3. Docker Compose файлын жасаңыз
compose.yaml файлын жасаңыз:
services:
postgres:
image: postgres:18-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
PGDATA: /var/lib/postgresql/data
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 10
n8n:
image: docker.n8n.io/n8nio/n8n:${N8N_VERSION}
restart: unless-stopped
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: postgres
DB_POSTGRESDB_PORT: "5432"
DB_POSTGRESDB_DATABASE: ${POSTGRES_DB}
DB_POSTGRESDB_USER: ${POSTGRES_USER}
DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}
N8N_HOST: ${N8N_HOST}
N8N_PORT: "5678"
N8N_PROTOCOL: https
N8N_EDITOR_BASE_URL: https://${N8N_HOST}
N8N_WEBHOOK_URL: https://${N8N_HOST}/
N8N_PROXY_HOPS: "1"
GENERIC_TIMEZONE: ${GENERIC_TIMEZONE}
TZ: ${GENERIC_TIMEZONE}
N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: "true"
N8N_BLOCK_ENV_ACCESS_IN_NODE: "true"
N8N_RUNNERS_MODE: external
N8N_RUNNERS_AUTH_TOKEN: ${RUNNERS_AUTH_TOKEN}
N8N_RUNNERS_BROKER_LISTEN_ADDRESS: 0.0.0.0
EXECUTIONS_DATA_PRUNE: "true"
EXECUTIONS_DATA_MAX_AGE: "168"
EXECUTIONS_DATA_PRUNE_MAX_COUNT: "10000"
volumes:
- n8n_data:/home/node/.n8n
expose:
- "5678"
depends_on:
postgres:
condition: service_healthy
n8n-runner:
image: n8nio/runners:${N8N_VERSION}
restart: unless-stopped
environment:
N8N_RUNNERS_AUTH_TOKEN: ${RUNNERS_AUTH_TOKEN}
N8N_RUNNERS_TASK_BROKER_URI: http://n8n:5679
depends_on:
- n8n
caddy:
image: caddy:2-alpine
restart: unless-stopped
environment:
N8N_HOST: ${N8N_HOST}
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- caddy_data:/data
- caddy_config:/config
depends_on:
- n8n
volumes:
postgres_data:
name: n8n_postgres_data
n8n_data:
name: n8n_data
caddy_data:
name: n8n_caddy_data
caddy_config:
name: n8n_caddy_configСыртқы тапсырма орындаушысы кодты негізгі n8n процесінен бөлек орындайды. Бұл ішкі режимге қарағанда қауіпсіз және Code түйініндегі қате редактор мен webhook өңдеуіне әсер ету ықтималдығын азайтады.
4. HTTPS-ті қосыңыз
Caddyfile жасаңыз:
{$N8N_HOST} {
reverse_proxy n8n:5678
}DNS VPS-ке бағытталып, 80 және 443 порттары қолжетімді болса, Caddy TLS сертификатын автоматты түрде алады. Ішкі 5678 порты интернетке ашылмайды: сырттан тек 80 және 443 порттары қолжетімді, ал Caddy n8n-ге Docker желісі арқылы қатынайды.
N8N_WEBHOOK_URL және N8N_PROXY_HOPS айнымалылары редактор дұрыс ашық webhook мекенжайларын жасап, бір reverse proxy-ден келген тақырыптарға сенуі үшін қажет.
5. n8n-ді іске қосыңыз
Соңғы конфигурацияны тексеріп, контейнерлерді іске қосыңыз:
docker compose config
docker compose up -d
docker compose ps
docker compose logs --tail=100 n8n caddyАшыңыз:
https://n8n.example.comИесі аккаунтын жасаңыз. Оның паролін әріптестеріңізбен бөліспеңіз: топпен жұмыс істеу үшін бөлек аккаунттар жасап, әр адамға тек қажет рұқсаттарды беріңіз.
Алғашқы пайдалы жұмыс процесіңіз
Жақсы тест — веб-сайттан келген сұрауды өңдеу:
WebhookтүйінінPOSTәдісімен қосыңыз.- Тек аты-жөнін, электрондық пошта мекенжайын және дереккөзді қалдыру үшін
Edit Fieldsпайдаланыңыз. - Міндетті деректері жоқ сұрауды қабылдамау үшін
Ifтүйінін пайдаланыңыз. - CRM-де мәміле жасаңыз немесе
HTTP Requestарқылы сұрау жіберіңіз. - Telegram хабарламасын қосыңыз.
- Тізбекті
Respond to Webhookтүйінімен аяқтаңыз. - Тестілеуден кейін процесті белсендіріп, тест webhook-ын өндірістік URL-мен ауыстырыңыз.
Бұл мысал доменді, HTTPS-ті, кіріс сұрауларын, тіркелгі деректерін және сыртқы интеграцияны бірден тексереді. Одан кейін негізгі тізбек істен шыққанда сізге хабарлайтын бөлек Error Workflow қосыңыз.
Орнатудан кейін n8n-ді қорғау
Орнатылған n8n автоматты түрде сенімді жүйеге айналмайды. Іске қосқаннан кейін мыналарды тексеріңіз:
- редактор тек HTTPS арқылы қолжетімді;
.envфайлында600рұқсаттары бар және ол Git-ке жіберілмейді;- сыртқы API кілттерінің тек қажетті ең аз рұқсаттары бар;
- әр webhook дереккөздің қолтаңбасын немесе құпиясын тексереді;
- орындау тарихы автоматты түрде өшіріледі;
- маңызды процестердегі қателер әкімшіге жіберіледі.
Community түйіндері пакет ретінде орнатылады және жұмыс процесінің деректері мен серверге қол жеткізуі мүмкін. Бейтаныс түйіндерді тексермей қоспаңыз. Қажет болмаса, оларды N8N_COMMUNITY_PACKAGES_ENABLED=false арқылы өшіріңіз.
Кірістірілген аудитті іске қосыңыз:
docker compose exec n8n n8n auditОл қорғалмаған webhook-тарды, қауіпті түйіндерді және тіркелгі деректерінің мәселелерін табуға көмектеседі, бірақ қолмен тексеруді алмастырмайды.
Орындалу тарихы және жеке деректер
n8n ақауларды жөндеу үшін кіріс және шығыс деректерді сақтайды. Онымен бірге электрондық хаттар, телефон нөмірлері, құжаттар және API жауаптары да дерекқорда қалуы мүмкін.
Жоғарыдағы конфигурацияда орындалулар жеті күннен кейін өшіріледі, ал саны 10 000-мен шектеледі. Құпия процестер үшін сақтау мерзімін дерек сақтау саясатыңызға сай таңдаңыз және жұмыс процесі аяқталғанға дейін қажетсіз өрістерді алып тастаңыз.
Сақтық көшірмелер және жаңартулар
Қалпына келтіру үшін PostgreSQL dump, n8n_data volume, конфигурация файлдары және .env ішінде сақталған N8N_ENCRYPTION_KEY қажет. Көшіру алдында PostgreSQL-ді жұмыс істеп қалдырып, процессорларды тоқтатыңыз. Бұл жұмыс процестерін орындауда қысқа үзіліс туғызады:
cd /opt/n8n
mkdir -p backup
docker compose stop n8n n8n-runner
docker compose exec -T postgres sh -c \
'pg_dump -U "$POSTGRES_USER" "$POSTGRES_DB"' \
| gzip > "backup/n8n-db-$(date +%F).sql.gz"
docker run --rm \
-v n8n_data:/source:ro \
-v "$PWD/backup":/backup \
alpine sh -c \
'tar -czf /backup/n8n-data-$(date +%F).tar.gz -C /source .'
tar -czf "backup/n8n-config-$(date +%F).tar.gz" \
.env compose.yaml Caddyfile
docker compose start n8n n8n-runner.env бар архивте құпия деректер бар: оны шифрлап, VPS-тен тыс сақтаңыз. Сақтық көшірмені сынақ арқылы қалпына келтіріп, мезгіл-мезгіл тексеріңіз.
Жаңартудан бұрын сақтық көшірме жасап, релиз ескертпелерін оқыңыз:
cd /opt/n8n
docker compose pull
docker compose up -d
docker compose psТапсырма орындаушысы мен негізгі контейнер бірдей нұсқа тегін қолдануы керек.
Масштабтау қашан қажет болады
Нақты жүктеме пайда болмайынша Redis пен бірнеше worker іске қоспаңыз. PostgreSQL бар бір инстансты жүргізу оңайырақ және ол әдетте шағын ішкі процестерге жеткілікті.
Queue mode ұзақ тапсырмалар webhook-тарды кідірткенде, көптеген жұмыс процесі бір уақытта басталғанда немесе файл өңдеу қолжетімді жадты үнемі тауысып отырғанда қажет болады. Бұл құрылымда негізгі инстанс оқиғаларды қабылдайды, Redis тапсырмаларды бөледі, ал worker-лер оларды параллель орындайды. Барлық компонент бір PostgreSQL дерекқорына қосылып, бірдей N8N_ENCRYPTION_KEY қолдануы керек.
n8n үшін қандай VPS таңдау керек
n8n, PostgreSQL, Caddy және тапсырма орындаушыны бірге іске қосу үшін 2 vCPU, 4 GB RAM және NVMe дискіден бастау орынды. tropic.host сайтындағы Light жоспары осы конфигурацияға сәйкес келеді: 2 vCPU, 4 GB RAM және 25 GB NVMe. Бұл ауыр файл өңдеусіз алғашқы өндірістік процестерге жеткілікті.
Құжаттар, үлкен деректер жиынтығы және қатар орындалатын көптеген AI процестері үшін 8 GB RAM жақсырақ. Тұрақты желі де маңызды: webhook-тар, OAuth callback-тері және жоспарланған тапсырмалар үнемі қолжетімді болуы тиіс.
Қорытынды
n8n қайталанатын операцияларды түсінікті визуалды ағындарға айналдырады: дайын түйіндер іске қосуды жеделдетеді, HTTP Request кез келген API-ді дерлік қосады, ал Code түйіні өз логикаңызды қосуға мүмкіндік береді.
Self-hosted нұсқасы сервер мен дерекқорды бақылауға береді, бірақ HTTPS, шектеулі кілттер, тарихты тазалау және тексерілген сақтық көшірмелерді талап етеді. N8N_ENCRYPTION_KEY мәнін PostgreSQL-мен бірге сақтаңыз: онсыз қалпына келтірілген тіркелгі деректерін шифрдан шығару мүмкін емес.
FAQ
n8n-ді тегін пайдалануға бола ма?
Иә. Community Edition-ды жеке және ішкі процестер үшін өз серверіңізде тегін орналастыруға болады. Hosted n8n-ді дербес SaaS ретінде қайта сату fair-code лицензиясымен шектеледі.
n8n-ді доменсіз орнатуға бола ма?
Жергілікті тест үшін — иә. Ашық webhook-тар мен OAuth үшін домен және HTTPS қолданған дұрыс.
n8n-ге қанша RAM қажет?
Қарапайым жеке процестер көбіне 2 GB RAM-мен жұмыс істейді. PostgreSQL, Caddy және тапсырма орындаушысы бар n8n үшін 4 GB орындырақ, ал файлдар мен қатар орындалуларға 8 GB немесе одан көп қажет болуы мүмкін.
Барлық дерек VPS ішінде қала ма?
Жұмыс процесі басқа жерге жібермеген деректер ғана ішінде қалады. Дерекқор мен орындалу тарихы VPS-те сақталады, бірақ Telegram, CRM немесе сыртқы AI моделінің түйіндері таңдалған деректерді тиісті қызметке жібереді.
n8n сақтық көшірмесіне не кіруі керек?
PostgreSQL dump, n8n_data volume, compose.yaml, Caddyfile, .env және оның ішіндегі N8N_ENCRYPTION_KEY. Көшірмені VPS-тен тыс шифрланған түрде сақтап, қалпына келтіру арқылы тексеріңіз.
