n8n у Docker + локальна Ollama: створюємо автономного ШІ-помічника без підписок
🇬🇧 Read this article in English
Хмарні сервіси автоматизації на кшталт Zapier чи Make (Integromat) — чудові інструменти, поки ви не впретеся в їхні обмеження. Безкоштовні плани дають жалюгідні 100 операцій на місяць, а платні тарифи швидко починають коштувати як окремий орендований сервер.
Але фінанси — це лише половина проблеми. Головний біль — приватність та витрати на ШІ.
Якщо ви хочете, щоб автоматизація аналізувала ваші листи, серверні логи, фінансові виписки чи домашні сповіщення за допомогою ChatGPT, вам доводиться:
- Зливати чутливі персональні дані на сервери сторонніх компаній.
- Щомісяця сплачувати рахунки за OpenAI API за кожен переданий токен.
Сьогодні ми розгорнемо альтернативу корпоративного рівня у власному Homelab: потужний візуальний конструктор автоматизацій n8n, підключений до локальної нейромережі Ollama в Docker.
Результат: 100% приватна, безлімітна та безкоштовна платформа автоматизації, яка працює на вашому залізі й не надсилає назовні жодного байту.
Мал. 1. Пайплайн в n8n: тригер розкладу ➔ нода локальної моделі Ollama (Llama 3.2 / Qwen 2.5) ➔ надсилання розумного висновку в Telegram
Чому саме n8n та Ollama?
- n8n — це золотий стандарт self-hosted автоматизацій. На відміну від старих рішень, n8n має сучасний візуальний інтерфейс, сотні готових інтеграцій (Telegram, Discord, PostgreSQL, Webhooks, GitHub, Google Sheets) і, найголовніше, нативну підтримку AI-агентів (LangChain).
- Ollama — як ми розбирали в статті про локальний ШІ, це найпростіший спосіб запустити сучасні відкриті моделі (Llama 3.2, Mistral, Qwen 2.5) на власному комп’ютері чи сервері.
Поєднавши їх в одній ізольованій мережі Docker, ми отримуємо повноцінного штучного інтелекта-асистента, який може ухвалювати рішення в реальному часі, парсити сирі дані та керувати вашими сервісами.
Архітектура: як n8n спілкується з Ollama в Docker
Поширена помилка новачків: спробувати з’єднати n8n з Ollama через http://localhost:11434.
Всередині контейнера localhost вказує на сам контейнер n8n, а не на хост-машину. Тому ми об’єднаємо обидва сервіси в спільну віртуальну мережу Docker (ai-network). У цьому випадку n8n звертається до нейромережі за внутрішнім системним іменем:
http://ollama:11434.
Крок 1. Розгортання n8n та Ollama через Docker Compose
Створимо каталог для нашого проекту:
1
2
mkdir -p /opt/n8n-ai
cd /opt/n8n-ai
Створюємо файл docker-compose.yml:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
ports:
- "11434:11434"
volumes:
- ./ollama_data:/root/.ollama
networks:
- ai-network
# Якщо у вас є відеокарта NVIDIA, розкоментуйте блок нижче для прискорення:
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: all
# capabilities: [gpu]
n8n:
image: docker.n8n.io/n8nio/n8n:latest
container_name: n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
- N8N_HOST=n8n.local
- N8N_PORT=5678
- N8N_PROTOCOL=http
- NODE_ENV=production
- GENERIC_TIMEZONE=Europe/Kyiv
- TZ=Europe/Kyiv
volumes:
- ./n8n_data:/home/node/.n8n
networks:
- ai-network
depends_on:
- ollama
networks:
ai-network:
name: ai-network
driver: bridge
Запускаємо стек:
1
docker compose up -d
Перевіримо статус контейнерів:
1
docker compose ps
Крок 2. Завантаження потрібної моделі в Ollama
Для задач автоматизації в n8n потрібні швидкі, чуйні та точні моделі.
Найкращі кандидати у 2026 році:
llama3.2:3b— ідеальна ультралегка модель. Працює блискавично навіть на звичайному процесорі (CPU) слабкого сервера чи Mini-PC, потребує лише ~2.5 ГБ RAM.qwen2.5:7bабоmistral:7b— якщо є відеокарта або потужний сервер. Чудово розбирається в структурованому JSON, коді та багатокроковій логіці.
Завантажимо компактну модель llama3.2:3b:
1
docker exec -it ollama ollama run llama3.2:3b
Після завершення завантаження перевірте працездатність простим запитом (наприклад, Hi, are you ready?) і вийдіть комбінацією Ctrl + D. Модель збережеться на диску та буде готова приймати запити від n8n.
Крок 3. Перший вхід та підключення Ollama в n8n
- Відкрийте у браузері
http://IP_ВАШОГО_СЕРВЕРА:5678. - При першому вході створіть обліковий запис адміністратора n8n.
- Перейдіть до бічного меню: Credentials ➔ Add Credential.
- У пошуку введіть Ollama. Оберіть Ollama.
- У полі Base URL вкажіть:
1
http://ollama:11434
- Натисніть Save. З’єднання перевірено і готове до роботи!
Крок 4. Практичний сценарій: Розумний Telegram-дайджест
Зробимо реальний корисний сценарій: щоранку о 09:00 n8n отримує технічні новини або логи сервера, відправляє їх локальній Ollama, а модель виділяє головне, відсікає спам і формує гарне повідомлення в Telegram.
1. Створюємо новий Workflow
Натисніть Add Workflow у верхньому правому кутку.
2. Додаємо тригер розкладу (Schedule Trigger)
- Натисніть + на полотні.
- Знайдіть Schedule Trigger.
- Встановіть інтервал: щодня о
09:00.
3. Додаємо джерело даних
- Додайте ноду HTTP Request (або RSS Read).
- Наприклад, вкажіть посилання на RSS-стрічку новин кібербезпеки чи IT.
4. Додаємо інтелект: AI Agent + Ollama Chat Model
Ось тут починається справжня магія сучасного n8n:
- Додайте ноду AI Agent.
- У полі Prompt Type оберіть Define below.
- Напишіть інструкцію системного промпту:
1 2 3
Ти — технічний аналітик. Прочитай наданий вхідний текст. Виділи 3 найважливіші події, зроби короткий висновок українською мовою та додай емодзі для оформлення. Будь лаконічним.
- До блоку Model у ноді AI Agent приєднайте дочірню ноду Ollama Chat Model.
- Вкажіть створені облікові дані Ollama та оберіть модель:
llama3.2:3b.
5. Додаємо сповіщення в Telegram
- Додайте ноду Telegram.
- Оберіть операцію: Send a text message.
- Вкажіть
Chat IDта токен вашого бота (як створити бота, ми детально описували у гайді про серверні сповіщення). - У полі Text передайте результат роботи ШІ: ``.
Натисніть Test step — і через кілька секунд у ваш Telegram надійде розумне, відфільтроване повідомлення, згенероване вашою власною моделлю!
Безпека та доступ до n8n з інтернету
Якщо ви хочете приймати вхідні вебхуки (наприклад, сповіщення від GitHub, платіжних систем чи власного блогу), панель n8n має бути доступна ззовні.
- Відкривати порт
5678у роутері — небезпечно. - Найкраще рішення — скористатися Cloudflare Tunnel, про який ми писали нещодавно. Ви зможете виставити піддомен
n8n.yourdomain.comбез відкритих портів і захистити адмінку авторизацією Cloudflare Access.
Підсумки
Зв’язка n8n + Ollama перетворює звичайний сервер чи Homelab на автономний центр штучного інтелекту:
- Нуль витрат: жодних лімітів на кількість запусків і жодних рахунків за токени OpenAI.
- Абсолютна конфіденційність: ваші приватні листи, паролі, клієнтські бази та логи не покидають контур вашого сервера.
- Гнучкість: один раз налаштований пайплайн працює роками у фоні.
Спробуйте зібрати свій перший сценарій — і ви більше ніколи не повернетеся до платних хмарних конструкторів!
