...

Installazione di n8n con docker, postgresql e traefik

In questo articolo imparerete come configurare e utilizzare n8n su un server Linux con pochi comandi. In questo esempio ho utilizzato un server Almalinux 9 come piattaforma. PostgreSQL è molto adatto come server di database. Tuttavia, il server di database può anche essere omesso per piccoli ambienti di prova. Traefik è un ottimo server reverse proxy per ambienti docker che può anche utilizzare LetsEncrypt per le connessioni TLS certificate.

I fatti più importanti in sintesi

  • I dati sono al sicuro se installati sul proprio server. I dati di accesso importanti possono così rimanere sotto il vostro controllo.
  • L'installazione di n8n su AlmaLinux 9 richiede componenti di base come Docker, Traefik e PostgreSQL per garantire un'installazione sicura.
  • L'installazione di un ambiente completo richiede solo pochi minuti e può essere scalata in qualsiasi momento.

Che cos'è l'n8n?

Funzioni estese di n8n, tra cui il multi trigger.

n8n è una piattaforma iPaaS open-source per l'automazione del cloud, fondata a Berlino nel 2019. La piattaforma consente:

  • l'integrazione dei flussi di lavoro attraverso processi e modelli automatizzati
  • l'aumento della produttività
  • il miglioramento del coordinamento del team
  • Più trasparenza

Una caratteristica fondamentale di n8n è la sua flessibilità. Grazie al supporto di JavaScript e Python, i team possono creare piani d'azione chiari e aumentare significativamente la loro efficienza.

Ciò è ulteriormente supportato dalla pubblicazione con licenza Fair Code, che garantisce un uso equo e aperto del codice sorgente.

Installazione di n8n su AlmaLinux 9

L'installazione di n8n su AlmaLinux 9 è semplice e scalabile grazie a Docker, sia in locale che nel cloud. Per un'installazione sicura ed efficiente, abbiamo bisogno di Traefik, PostgreSQL e Docker. Questi componenti consentono di gestire e configurare senza problemi l'ambiente n8n.

Di seguito, verranno illustrati i singoli passaggi per l'installazione di n8n su un VPS AlmaLinux 9. Questa guida fornisce una soluzione sicura e scalabile per l'installazione di n8n.

Prerequisiti

Per rendere l'n8n accessibile via Internet, è necessario:

  • Un indirizzo IPv4 pubblico.
  • Un VPS AlmaLinux 9 fresco, minimamente installato, per eseguire l'applicazione.
  • Accesso root (SSH) per gestire e configurare l'n8n in modo sicuro.

Questi requisiti sono fondamentali per garantire un ambiente stabile e sicuro per n8n. Essi forniscono le basi necessarie per garantire un'installazione e un funzionamento senza problemi.

Primi passi: aggiornamento del sistema

dnf update -y
dnf install -y curl wget gnupg2 ca-certificates vim firewalld git nano

personalizzare #firewall, abilitare la porta 80/443
systemctl enable --now firewalld
firewall-cmd --permanente --add-service=http
firewall-cmd --permanente --add-service=https
firewall-cmd --reload

Installare Docker e Docker Compose

Per installare Docker e Docker Compose, eseguire i seguenti passaggi:

  1. Installare Docker e Docker Compose con il comando: dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
  2. Aggiornare i pacchetti con: dnf update -y
  3. Attivare il servizio Docker e avviarlo immediatamente con: systemctl enable -now docker
dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
systemctl enable --now docker

Docker consente di isolare le applicazioni in contenitori, semplificando l'installazione e la gestione di n8n. Ciò facilita la scalabilità e garantisce un utilizzo efficiente delle risorse.

Impostazione della struttura del progetto

mkdir -p /opt/n8n-traefik

cd /opt/n8n-traefik

mkdir n8n postgres traefik n8n_data

chown -R 1000:1000 /opt/n8n-traefik/n8n_data

chmod 600 ./n8n_data/config

chown 1000:1000 ./n8n_data/config


📁 Struttura della directory

/opt/n8n-traefik/

├── docker-compose.yml ← Orchestrazione centrale

├─── traefik/

│ └── letsencrypt/acme.json ← Archivio certificati SSL

├─── n8n/ ← dati persistenti n8n (flussi di lavoro, ecc.)

├── postgres/ ← dati PostgreSQL

└── backup.sql ← opzionale: file di dump per il backup

Configurare Traefik

Per configurare Traefik, procedere come segue:

mkdir -p traefik/letsencrypt
toccare traefik/letsencrypt/acme.json
chmod 600 traefik/letsencrypt/acme.json
  • Aggiungere i servizi HTTP e HTTPS al firewall per abilitare l'accesso.
  • Create le directory necessarie per Traefik con il comando: mkdir -p traefik/letsencrypt.

È necessaria una configurazione SSL per garantire connessioni HTTPS sicure. I record A del DNS devono puntare al server per configurare correttamente il dominio.

Preparare il DNS

Se si desidera utilizzare n8n su Internet, è possibile aggiungere una voce DNS all'installazione. In questo esempio, si tratta di n8n.webhoster.de e webhook.n8n.webhoster.de.

Creare la variabile d'ambiente .env

Le variabili possono essere salvate nel file .env, in modo da non dover sempre modificare tutto nel codice sorgente. A questo scopo, è sufficiente del testo semplice. Assicurarsi che solo voi abbiate accesso al server. N8N_HOSTNAME è il dominio attraverso il quale n8n deve essere accessibile.

N8N_BASIC_AUTH_USER=n8nuser
N8N_BASIC_AUTH_PASSWORD=parola di sicurezza
DB_POSTGRESDB_USER=n8nDBuser
DB_POSTGRESDB_PASSWORD=password sicura
DB_POSTGRES_DB=n8n
N8N_HOSTNAME=n8n.webhoster.de
N8N_WEBHOOK=webhook.n8n.webhoster.de
WEBHOOK_URL=https://${N8N_WEBHOOK}
WEBHOOK_TUNNEL_URL=https://${N8N_WEBHOOK}

Creare docker-compose.yml

servizi:
  traefik:
    immagine: traefik:latest
    nome_contenitore: traefik
    riavvio: sempre
    comando:
      - "--api.insecure=false"
      - "--api.dashboard=true"
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.myresolver.acme.tlschallenge=true"
      - "--certificatesresolvers.myresolver.acme.email=deine@emailadresse.xx"
      - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
    porte:
      - "80:80"
      - "443:443"
    volumi:
      - ./traefik/letsencrypt:/letsencrypt
      - /var/run/docker.sock:/var/run/docker.sock:ro
    reti:
      - web

  n8n:
    immagine: n8nio/n8n
    nome_contenitore: n8n
    riavvio: sempre
    ambiente:
      - N8N_HOST=${N8N_HOSTNAME}
      - N8N_PORT=5678
      - N8N_PROTOCOLLO=https
      - N8N_BASE_URL=https://${N8N_HOSTNAME}
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=${N8N_BASIC_AUTH_USER}
      - N8N_BASIC_AUTH_PASSWORD=${N8N_BASIC_AUTH_PASSWORD}
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=${DB_POSTGRES_DB}
      - DB_POSTGRESDB_USER=${DB_POSTGRESDB_USER}
      - DB_POSTGRESDB_PASSWORD=${DB_POSTGRESDB_PASSWORD}
      - N8N_RUNNERS_ENABLED=true
    volumi:
      - ./n8n_data:/home/node/.n8n
    etichette:
      - "traefik.enable=true"

      Interfaccia utente dell'editor #
      - "traefik.http.routers.n8n.rule=Host("${N8N_HOSTNAME}")"
      - "traefik.http.routers.n8n.entrypoints=websecure"
      - "traefik.http.routers.n8n.tls.certresolver=myresolver"
      - "traefik.http.routers.n8n.service=n8n-ui"
      - "traefik.http.services.n8n-ui.loadbalancer.server.port=5678"

      Punto finale del webhook #
      - "traefik.http.routers.n8n-webhook.rule=Host("${N8N_WEBHOOK}")"
      - "traefik.http.routers.n8n-webhook.entrypoints=websecure"
      - "traefik.http.routers.n8n-webhook.tls.certresolver=myresolver"
      - "traefik.http.routers.n8n-webhook.service=n8n-webhook"
      - "traefik.http.services.n8n-webhook.loadbalancer.server.port=5678"

    dipende da:
      - postgres
    reti:
      - web

  postgres:
    immagine: postgres:15
    nome_contenitore: postgres
    riavvio: sempre
    ambiente:
      - POSTGRES_USER=${DB_POSTGRESDB_USER}
      - POSTGRES_PASSWORD=${DB_POSTGRESDB_PASSWORD}
      - POSTGRES_DB=${DB_POSTGRES_DB}
    volumi:
      - ./postgres:/var/lib/postgresql/data
    reti:
      - web

reti:
  web:
    driver: bridge

Avvio dei servizi

cd /opt/n8n-traefik
docker compose up -d

Primi passi con n8n

Primi passi con l'n8n e la sua interfaccia utente.

Dopo l'installazione, verificare che n8n sia in esecuzione con HTTPS e Traefik inserendo quanto segue come in questo esempio https://n8n.webhoster.de aprire. Effettuare il login tramite Basic Auth per garantire l'accesso a n8n.

Docker consente di confezionare e distribuire le applicazioni in contenitori isolati, semplificando notevolmente l'installazione e la gestione. Questo è il primo passo per sfruttare appieno la potenza di n8n.

Interfaccia utente

L'interfaccia utente di n8n è stata progettata per consentire una facile navigazione tra i vari componenti del flusso di lavoro e il file. Grazie a un'interfaccia drag-and-drop di facile utilizzo, gli utenti possono creare e personalizzare facilmente i flussi di lavoro senza dover disporre di conoscenze di programmazione approfondite.

n8n supporta l'integrazione di diverse applicazioni, offrendo un elevato grado di flessibilità nella creazione di flussi di lavoro. Ciò lo rende uno strumento potente per automatizzare un'ampia gamma di processi.

Creare un flusso di lavoro semplice

Un flusso di lavoro è una sequenza strutturata di attività o processi per raggiungere un obiettivo specifico. Un flusso di lavoro efficace comprende le fasi di pianificazione, esecuzione e revisione e deve definire chiaramente le responsabilità e le fasi del processo di lavoro. La gestione dei flussi di lavoro è un aspetto importante dei processi aziendali e può essere ottimizzata dai sistemi di gestione dei flussi di lavoro.

La documentazione di n8n fornisce istruzioni passo-passo per aiutare i nuovi utenti a creare rapidamente i loro primi flussi di lavoro. I flussi di lavoro digitali facilitano l'automazione e il risparmio di tempo per le attività semplici dei dipendenti.

Funzioni estese di n8n

Cruscotto n8n
La schermata di accesso quando si accede a n8n per la prima volta.

La piattaforma supporta una varietà di applicazioni grazie a oltre 400 integrazioni e a un'architettura basata su nodi. Con n8n, le aziende possono ottimizzare i processi di marketing attraverso un'automazione intelligente e una perfetta integrazione di diverse piattaforme.

n8n consente l'automazione di processi complessi in vari settori industriali, integrando diversi strumenti e API. L'uso di strumenti di intelligenza artificiale all'interno di n8n consente un approccio personalizzato ai clienti e aumenta i tassi di conversione.

Multi Triggering

La funzione di multi-trigger di n8n consente di combinare più trigger in un singolo flusso di lavoro per creare diversi scenari di automazione. Questa funzione migliora la flessibilità consentendo a un flusso di lavoro di essere attivato da diversi trigger contemporaneamente.

La possibilità di combinare più trigger aumenta l'efficienza nell'automazione di processi complessi e fa risparmiare tempo nella creazione di flussi di lavoro.

Esportazioni JSON

L'esportazione JSON di n8n semplifica il trasferimento dei dati dei flussi di lavoro tra diversi sistemi e applicazioni. L'esportazione dei flussi di lavoro come JSON consente un'integrazione completa dei dati e facilita lo scambio di automazioni.

Questa funzione facilita l'integrazione con altri sistemi e lo scambio di flussi di lavoro tra istanze diverse.

Confronto tra n8n e altri strumenti

Confronto tra n8n e altri strumenti di automazione.

n8n consente agli utenti esperti di tecnologia di sviluppare e ospitare soluzioni di automazione personalizzate. Rispetto a Zapier, n8n è più conveniente e offre una soluzione open source completa.

La comunità n8n è attiva e supporta gli utenti con suggerimenti regolari per il miglioramento e le risorse, il che dimostra la sua crescente importanza.

n8n vs. Zapier

n8n consente un elevato livello di personalizzazione attraverso l'integrazione di snippet di codice personalizzati, mentre Zapier si basa su un'interfaccia facile da usare e su molte integrazioni precostituite. Rispetto a Zapier, n8n offre un'opzione di self-hosting che consente agli utenti di controllare completamente i propri dati e di evitare potenziali costi di licenza.

Zapier è particolarmente adatto ai team di marketing senza conoscenze tecniche e consente integrazioni rapide con oltre 6.000 prodotti SaaS disponibili. La barriera d'ingresso per Zapier è bassa, mentre n8n richiede un livello di competenza tecnica più elevato, in particolare una conoscenza di base di JavaScript.

n8n vs. Microsoft Power Automate

n8n consente automazioni più complesse con una gestione dettagliata degli errori, mentre Microsoft Power Automate è ottimizzato per processi semplici senza interazione con l'utente. n8n offre una gestione degli errori più completa per i flussi di lavoro complessi, meno accentuata in Microsoft Power Automate.

Queste differenze rendono l'n8n la scelta migliore per le aziende che richiedono soluzioni di automazione complesse.

Esempi di applicazione dei flussi di lavoro n8n

n8n consente l'automazione dei flussi di lavoro per le aziende di tutte le dimensioni, integrando diverse applicazioni. Con oltre 1.000 servizi diversi, n8n supporta l'automazione versatile di flussi di lavoro complessi.

Con n8n, i flussi di lavoro complessi possono essere automatizzati collegando più applicazioni, con un notevole aumento dell'efficienza.

Gestione del feedback dei clienti

Un flusso di lavoro n8n per il feedback dei clienti può inviare notifiche automatiche al team non appena viene ricevuto un nuovo feedback. Il feedback dei clienti può essere analizzato e categorizzato in tempo reale attraverso un flusso di lavoro per migliorare i tempi di risposta.

Esportando come JSON, gli utenti possono utilizzare i loro flussi di lavoro come modelli e riprodurli rapidamente.

Campagne di marketing

Un esempio di flusso di lavoro per le campagne di marketing con n8n potrebbe includere l'invio automatico di e-mail a potenziali clienti in base alle loro interazioni. Questa automazione fa risparmiare tempo e fornisce esempi mirati e personalizzati di contatto con i clienti.

Integrando diverse piattaforme e utilizzando strumenti di intelligenza artificiale, n8n può aumentare in modo significativo l'efficienza e l'efficacia delle campagne di marketing grazie all'intelligenza artificiale e all'intelligenza.

Vantaggi e punti di forza di n8n

Vantaggi e punti di forza di n8n nell'automazione.

n8n offre opzioni di self-hosting che consentono alle organizzazioni il massimo controllo sui propri dati e processi. Questo permette un uso illimitato se ospitato sul proprio server, a differenza di Zapier che ha una versione gratuita limitata.

L'uso di n8n consente di creare integrazioni senza conoscenze di programmazione, il che facilita l'avvio degli utenti e aumenta l'efficienza delle aziende.

Flessibilità

n8n consente un numero illimitato di automazioni quando è in hosting, mentre altri strumenti, come Zapier, possono diventare rapidamente più costosi. Le opzioni di personalizzazione di n8n sono diverse e consentono alle aziende di soddisfare requisiti specifici.

Le opzioni di personalizzazione di n8n consentono di adattare facilmente i flussi di lavoro e di copiare e modificare gli elementi per soddisfare esigenze specifiche. In questo modo le aziende possono ottimizzare l'automazione dei loro processi individuali e quindi aumentare la loro efficienza utilizzando diverse opzioni e facendo una selezione.

Sostegno alla comunità

La comunità n8n svolge un ruolo fondamentale nel supporto e nello sviluppo della piattaforma. La comunità offre numerose risorse, tra cui forum, tutorial e contributi regolari che aiutano gli utenti a comprendere meglio il software e a realizzarne il potenziale.

n8n offre servizi di supporto completi e adeguati alle esigenze degli utenti, tra cui assistenza personalizzata e supporto tecnico. Il supporto della comunità e le risorse fornite sono fondamentali per il successo e l'efficienza dell'utilizzo di n8n.

Sintesi

In sintesi, n8n è una piattaforma estremamente flessibile e potente per automatizzare i processi aziendali. Dalla semplice installazione su AlmaLinux 9 all'interfaccia utente intuitiva e alle funzionalità avanzate come il multi-triggering e l'esportazione JSON, n8n offre tutti gli strumenti di cui le aziende hanno bisogno per rendere più efficienti i loro flussi di lavoro.

I vantaggi di n8n, come l'opzione di self-hosting, la comunità attiva e l'ampia personalizzazione, lo rendono una scelta ideale per le aziende di tutte le dimensioni. Esplorate le possibilità di n8n e scoprite come ottimizzare i vostri processi e aumentare la vostra produttività.

Che cos'è n8n e come può aiutare la mia azienda?

n8n è una potente piattaforma open-source di automazione dei flussi di lavoro che può aiutare la vostra organizzazione a integrare i processi per migliorare significativamente la produttività e il coordinamento dei team. Questa automazione consente di utilizzare le risorse in modo più efficiente e di ridurre al minimo gli errori.

Come si installa n8n su AlmaLinux 9?

Per installare n8n su AlmaLinux 9, installate prima Docker e Docker Compose, configurate Traefik e assicuratevi di avere un indirizzo IPv4 pubblico e l'accesso root.

Quali sono i vantaggi della funzione multi-trigger dell'n8n?

La funzione multi-trigger di n8n offre il vantaggio di combinare diversi trigger in un unico flusso di lavoro, aumentando l'efficienza e consentendo scenari di automazione flessibili. In questo modo è possibile avviare contemporaneamente diversi processi, ottimizzando la progettazione del flusso di lavoro.

In che modo n8n si differenzia da Zapier?

n8n si differenzia da Zapier per la maggiore personalizzazione, l'opzione di self-hosting e una più chiara trasparenza dei costi. È ideale per gli utenti esperti di tecnologia e per le aziende che danno priorità alla protezione dei dati.

Che tipo di supporto offre la comunità n8n?

La comunità n8n offre un supporto completo attraverso forum, tutorial e assistenza personale, consentendo agli utenti di contribuire attivamente all'ulteriore sviluppo della piattaforma. Queste risorse promuovono il dialogo e facilitano l'uso del software n8n.

Chi offre hosting n8n?

È possibile ottenere macchine n8n completamente installate da webhoster.de AG come server gestito o come server root. Il vantaggio di un ambiente n8n self-hosted è la protezione dei dati. Non è necessario memorizzare i dati di accesso e le chiavi API presso un servizio online che potrebbe presentare una falla nella sicurezza. I costi per un piccolo server virtuale con n8n sono circa gli stessi di un abbonamento con n8n. Molte estensioni non sono compatibili con il cloud di n8n. Per questo è sempre necessario un proprio server.

Articoli attuali