In questa occasione vedremo come installare N8N utilizzando il nostro dominio personalizzato in modo super semplice con certificato SSL di LetsEncrypt, utilizzando il proxy Traefik. L'installazione è super facile poiché l'ho semplificata al massimo, per questo faremo i seguenti passaggi:
Installazione di Docker
Per iniziare, dobbiamo avere un server VPS, personalmente, raccomando Contabo perché ha una buona qualità-prezzo.
Configurato il server con Ubuntu 20.04 o superiore è il momento di installare Docker.
Docker permetterà avviare traefik e n8n.
/bin/bash -c "$(curl -fsSL https://get.docker.com)"
systemctl enable docker
systemctl start docker
Installazione di traefik
Utilizzeremo un repository che ho già preparato per l'occasione.
cd /opt
git clone https://github.com/aitorroma/docker-traefik traefik
cd traefik
chmod 600 acme.json
nano .env
Dovremo impostare le variabili DOCKER_DOMAIN
e ACME_EMAIL
nel file .env
ACME_EMAIL:
Indirizzo e-mail utilizzato per la registrazione ACME. Valore predefinito: 'webmaster@my.domain.tld'. Dobbiamo impostare il nostro indirizzo e-mail.
DOCKER_DOMAIN:
Dominio di base predefinito utilizzato per le regole dell'interfaccia. Può essere annullato impostando l'etichetta "traefik.domain" in un contenitore. Valore predefinito: 'my.domain.tld' dobbiamo inserire il dominio principale che useremo per il nostro subdomain.
Esecuzione di Traefik
cd /opt/traefik
docker network create web
docker-compose up -d
Questo comando eseguirà un contenitore in ascolto sulla porta 80 e 443 pronto per essere un proxy inverso.
Installazione di N8N utilizzando Traefik
Una volta avviato Traefik, dobbiamo seguire queste istruzioni per installare N8N.
cd /opt
git clone https://github.com/aitorroma/n8n-traefik.git n8n
cd n8n
nano .env
Impostare le variabili del file .env
N8N_HOST=n8n.hiveagile.club
VUE_APP_URL_BASE_API=https://${N8N_HOST}
N8N_PROTOCOL=https
WEBHOOK_URL=https://${N8N_HOST}
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=336
GENERIC_TIMEZONE=Europe/Madrid
#### SMTP CONFIG #####
N8N_EMAIL_MODE=smtp
N8N_SMTP_HOST=smtp.eu.mailgun.org
N8N_SMTP_PORT=465
N8N_SMTP_USER=user@domain.com
N8N_SMTP_PASS=lapassword
N8N_SMTP_SSL=true
N8N_SMTP_SENDER=user@domain.com
N8N_HOST:
Questo sarà l'URL che utilizzerai per accedere alla tua istanza di N8N, devi puntare il registro DNS A al tuo server per farlo funzionare.
Lascieremo le altre variabili come sono, tranne la sezione di configurazione SMTP CONFIG che dobbiamo configurare per ricevere le email.
Uso
Questo comando eseguirà l'istanza di N8N nel subdomain contrassegnato con supporto per SSL.
cd /opt/n8n
docker-compose up -d
Ora dovresti poter accedere all'URL che hai impostato in N8N_HOST
usando anche le credenziali che hai impostato nel file .env
Aggiornamenti automatici
Puoi utilizzare Watchtower per aggiornare N8N e tutti i contenitori contrassegnati con l'etichetta latest
.
docker run -d \
--name watchtower \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower -i 30
Invito al mio Canale
Sei invitato al mio canale di Telegram, dove pubblico più soluzioni come questa.
Scopri HiveAgile
Se ti è piaciuto questo contenitore, unisciti a HiveAgile.com, una community su OpenSource in cui puoi trovare molti contenitori Docker pronti all'uso, democratizzando tutta la parte tecnica per creare i tuoi progetti.