Полноценное развертывание n8n на собственном VPS-сервере

Оцените статью

В продолжении статьи «Установка n8n в Ubuntu Linux» сегодня доведем наш n8n до ума и сделаем ему полноценное доменное имя.

Сервис для авто-запуска n8n

По первой части статьи мы установили n8n и теперь нам необходимо создать сервисного пользователя и SystemD сервис для автоматического запуска n8n при старте сервера.

Создаем непривилегированного пользователя.

# adduser n8nuser
# mkdir /home/n8nuser/n8n/
# chown n8nuser:n8nuser /home/n8nuser/n8n/

Создаем сервис для автозапуска n8n при старте сервера (файл /etc/systemd/system/n8n.service).

[Unit]
Description=n8n Workflow Automation
After=network.target

[Service]
ExecStart=/usr/bin/n8n start --tunnel
Restart=always
RestartSec=10
User=n8nuser
Group=n8nuser

[Install]
WantedBy=multi-user.target

Настраиваем автозапуск и запускаем сервис.

# systemctl daemon-reload
# systemctl enable n8n
# systemctl start n8n
# systemctl status n8n

Если все прошло штатно, то мы увидим подобные сообщения.

Dec 08 11:25:19 srv-prod-cloud-01 n8n[15061]: Waiting for tunnel ...
Dec 08 11:25:20 srv-prod-cloud-01 n8n[15061]: Tunnel URL: https://b6z8tpdo8lok8makpasuwfrj.hooks.n8n.cloud/
Dec 08 11:25:20 srv-prod-cloud-01 n8n[15061]: IMPORTANT! Do not share with anybody as it would give people access to your n8n instance!
Dec 08 11:25:21 srv-prod-cloud-01 n8n[15061]: Version: 1.122.5
Dec 08 11:25:21 srv-prod-cloud-01 n8n[15061]: Editor is now accessible via:
Dec 08 11:25:21 srv-prod-cloud-01 n8n[15061]: https://b6z8tpdo8hefwbakpasuwfrj.hooks.n8n.cloud

Настройка домена и реверс-прокси Nginx

Устанавливаем необходимые пакеты.

# aptitude install nginx python3-certbot-nginx

Получаем сертификаты Let’s encrypt для нашего домена.

# certbot --nginx -d n8n.interlan.xyz

Конфигурация реверс-проxy Nginx (/etc/nginx/conf.d/n8n.conf).

server {
    listen 80;
    server_name n8n.interlan.xyz; # Replace with your actual domain
    return 301 https://$host$request_uri; # Redirect HTTP to HTTPS
}

server {
    listen 443 ssl;
    server_name n8n.interlan.xyz; # Replace with your actual domain

    ssl_certificate /etc/letsencrypt/live/n8n.interlan.xyz/fullchain.pem; # Path to your SSL certificate
    ssl_certificate_key /etc/letsencrypt/live/n8n.interlan.xyz/privkey.pem; # Path to your SSL key

    location / {
        proxy_pass http://localhost:5678;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_read_timeout 300s;
        proxy_send_timeout 300s;
        client_max_body_size 50M;
    }
}

Обновляем конфигурацию Nginx и открываем в браузере мастер настройки.

# systemctl reload nginx

Первый зарегистрированный пользователь будет администратором.

n8n workspace

Related Posts

Установка Keycloak в Ubuntu Linux 22.04

В современном цифровом мире вопросы аутентификации и авторизации пользователей выходят на первый план. Разработчикам и администраторам систем требуется надёжное, гибкое и безопасное решение для управления идентификацией — без избыточных затрат…

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Для присоединения Ubuntu‑системы к домену FreeIPA используется утилита ipa-client-install из пакета freeipa-client. Предварительные требования На этапе установки может быть предложено указать Kerberos realm и здесь на данном этапе можно оставить…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

You Missed

Установка Keycloak в Ubuntu Linux 22.04

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Установка и базовая настройка Wiki Outline

Установка и базовая настройка Wiki Outline

Snap, AppImage и Flatpak: отличия и практическое использование

Snap, AppImage и Flatpak: отличия и практическое использование

Вебинар «База знаний с AI: создаем корпоративную Wiki в облаке»

Вебинар «База знаний с AI: создаем корпоративную Wiki в облаке»

Маршрутизация DNS-запросов в Mikrotik

Маршрутизация DNS-запросов в Mikrotik