Глава 7 · 7.3
n8n: автоматизация на Вашия собствен сървър
С n8n свързвате услуги помежду им и автоматизирате задачи, например формуляр, който добавя ред в електронна таблица и изпраща съобщение. Вашите workflows и данни остават на Вашия собствен сървър.
Всяка рецепта надгражда работната папка /srv/diensten с Caddy от Вашата работна папка с compose.yaml, .env и Caddy. Добавяте услуга в compose.yaml, блок в Caddyfile, както и A и AAAA запис за името (вижте A и AAAA запис в Моите домейни).
1. DNS
Създайте A и AAAA запис за n8n.example.com.
2. compose.yaml
n8n:
image: n8nio/n8n
restart: unless-stopped
environment:
N8N_HOST: "n8n.example.com"
N8N_PORT: "5678"
N8N_PROTOCOL: "https"
N8N_WEBHOOK_URL: "https://n8n.example.com/"
NODE_ENV: "production"
GENERIC_TIMEZONE: "Europe/Amsterdam"
TZ: "Europe/Amsterdam"
volumes:
- n8n-data:/home/node/.n8n
И под volumes::
n8n-data:
N8N_WEBHOOK_URL съществува от n8n 2.30.0. Ако използвате по-стара версия, той се нарича WEBHOOK_URL. С този адрес n8n създава връзките за webhooks. Ако е грешен, Вашите webhooks няма да работят отвън.
3. Caddyfile
n8n.example.com {
reverse_proxy n8n:5678
}
anna@web1:/srv/diensten$ sudo docker compose up -d
anna@web1:/srv/diensten$ sudo docker compose exec -w /etc/caddy caddy caddy reload
Отворете https://n8n.example.com и веднага създайте акаунта на собственика. n8n работи само през https, а за това се грижи Caddy.
Back-up
Във volume n8n-data се намират Вашите workflows, данните Ви за вход в други услуги и ключът, с който n8n криптира тези данни за вход. Без този ключ не можете да използвате back-up. Затова включете целия volume във Вашия back-up (вижте Правилно архивиране на бази данни и Docker volumes).
Внимание: Един workflow може много неща: да изпраща имейли, да чете файлове, да управлява други услуги. Давайте му само правата, от които се нуждае, и защитете Вашия n8n акаунт със силна парола и двуфакторна идентификация.
