Φιλοξενήστε το n8n στον δικό σας server
Το n8n είναι ένα εργαλείο αυτοματισμού που συνδέει εφαρμογές και σας επιτρέπει να φτιάχνετε workflows. Μπορείτε να το τρέξετε στο δικό σας VPS με Docker. Η επίσημη τεκμηρίωση περιγράφει μια εγκατάσταση με Docker Compose και συνιστά το self-hosting σε όσους έχουν τεχνική εμπειρία. Οι οδηγοί εγκατάστασης δεν δίνουν αριθμό για CPU, RAM ή δίσκο, γι' αυτό έχει νόημα να ξεκινήσετε με μικρό server και να αναβαθμίσετε καθώς τον παρακολουθείτε.
Αυτό το άρθρο καλύπτει την άδεια χρήσης, τα βήματα εγκατάστασης, τις ρυθμίσεις που μετράνε, τα αντίγραφα ασφαλείας και τις ενημερώσεις.
Τι φτιάχνετε με το n8n;
Ένα workflow στο n8n είναι ένας ενεργοποιητής (trigger) και τα βήματα που συνδέονται με αυτόν. Ο ενεργοποιητής μπορεί να είναι ένα πρόγραμμα, ένα webhook ή ένα συμβάν σε άλλη εφαρμογή. Τυπικά παραδείγματα: η εγγραφή μιας υποβολής φόρμας σε υπολογιστικό φύλλο, η ειδοποίηση της ομάδας για μια νέα παραγγελία ή η συλλογή μιας αναφοράς κάθε πρωί και η αποστολή της με email. Φτιάχνετε τα workflows σε έναν οπτικό επεξεργαστή στο πρόγραμμα περιήγησης. Δεν απαιτείται να γράψετε κώδικα, αλλά μπορείτε να προσθέσετε ένα βήμα κώδικα αν θέλετε.
Γιατί να το τρέξετε στον δικό σας server;
- Τα workflows και τα αποθηκευμένα στοιχεία σύνδεσής σας μένουν στον δικό σας server.
- Τα προγραμματισμένα workflows συνεχίζουν να τρέχουν στον server όσο ο δικός σας υπολογιστής είναι κλειστός και τα webhooks μπορούν να τα ενεργοποιούν από έξω.
- Το όριο χρήσης σας το ορίζει η ισχύς του server σας και, αν δεν αρκεί, αναβαθμίζετε τον server.
- Σε αντάλλαγμα, η συντήρηση είναι δική σας: ενημερώσεις, αντίγραφα ασφαλείας και ασφάλεια.
Άδεια χρήσης: τι επιτρέπει η δωρεάν χρήση;
Το n8n δεν είναι ανοιχτού κώδικα. Σύμφωνα με τη δική του περιγραφή, είναι λογισμικό «fair-code». Ο πηγαίος κώδικας είναι διαθέσιμος, αλλά η Sustainable Use License περιορίζει την εμπορική χρήση. Σύμφωνα με την επίσημη σελίδα της άδειας, μπορείτε να το χρησιμοποιείτε δωρεάν για τις εσωτερικές λειτουργίες της εταιρείας σας και για προσωπικά ή μη εμπορικά projects. Είναι επίσης εντάξει να φτιάχνετε workflows για πελάτες ως αμειβόμενη συμβουλευτική, εφόσον οι πελάτες δεν αποκτούν οι ίδιοι πρόσβαση στο n8n. Η παροχή υπηρεσίας στην οποία οι πελάτες συνδέονται στο n8n για να φτιάξουν ή να επεξεργαστούν τα δικά τους workflows (φιλοξενία του n8n ως υπηρεσία) απαιτεί εμπορική άδεια. Για οριακές περιπτώσεις, ρωτήστε την ομάδα αδειών του n8n.
Βήματα εγκατάστασης
Αυτά τα βήματα ακολουθούν τον επίσημο οδηγό Docker Compose. Ο οδηγός αποκτά και ανανεώνει το πιστοποιητικό HTTPS μέσω ενός reverse proxy που λέγεται Traefik.
- Ετοιμάστε έναν server Linux με εγκατεστημένα το Docker Engine και το Docker Compose. Ελέγξτε με τα
docker --versionκαιdocker compose version. - Προσθέστε μια εγγραφή A που δείχνει ένα subdomain του domain σας (για παράδειγμα
n8n.example.com) στη διεύθυνση IP του server. Το άρθρο πώς να συνδέσετε το δικό σας domain σας οδηγεί στα βήματα. - Δημιουργήστε στον server τα αρχεία
.envκαιcompose.yamlαπό τον επίσημο οδηγό. - Συμπληρώστε τα
DOMAIN_NAME,SUBDOMAIN,GENERIC_TIMEZONEκαιSSL_EMAILστο.env. Για τη ζώνη ώρας χρησιμοποιήστε τοEurope/Istanbul. Αν την παραλείψετε, η προεπιλογή είναι η Νέα Υόρκη. - Ξεκινήστε το:
docker compose up -d - Ανοίξτε το subdomain σας σε πρόγραμμα περιήγησης και δημιουργήστε αμέσως τον λογαριασμό ιδιοκτήτη. Όποιος συμπληρώσει πρώτος αυτή την οθόνη γίνεται ο ιδιοκτήτης.
Ρυθμίσεις που πρέπει να ξέρετε
| Μεταβλητή | Τι κάνει |
|---|---|
N8N_HOST, N8N_PROTOCOL | Το όνομα host στο οποίο τρέχει το n8n και το πρωτόκολλο (https) |
N8N_WEBHOOK_URL | Πίσω από reverse proxy, το n8n δεν μπορεί να βρει την εξωτερική του διεύθυνση. Καταχωρίστε τη δημόσια διεύθυνση HTTPS ώστε να εμφανίζονται σωστά οι διευθύνσεις των webhooks. Το παλιό όνομα WEBHOOK_URL εξακολουθεί να λειτουργεί στις τρέχουσες εκδόσεις, αλλά είναι παρωχημένο. Σε παλαιότερη έκδοση ισχύει μόνο το παλιό όνομα, γι' αυτό ελέγξτε την τεκμηρίωση της έκδοσής σας. |
GENERIC_TIMEZONE, TZ | Η ζώνη ώρας των κόμβων προγραμματισμού |
N8N_ENCRYPTION_KEY | Το κλειδί που κρυπτογραφεί τα αποθηκευμένα στοιχεία σύνδεσης |
Ο κόμβος Webhook έχει δύο διευθύνσεις: η διεύθυνση δοκιμής λειτουργεί όσο επεξεργάζεστε το workflow και η διεύθυνση παραγωγής λειτουργεί όταν το ενεργοποιήσετε. Δώστε στις εξωτερικές υπηρεσίες τη διεύθυνση παραγωγής. Η αρχή της διεύθυνσης προέρχεται από την τιμή N8N_WEBHOOK_URL, οπότε αν αυτή η τιμή είναι λάθος, οι εξωτερικές υπηρεσίες δεν μπορούν να φτάσουν στο workflow σας.
Το κλειδί κρυπτογράφησης και τα αντίγραφα ασφαλείας
Στην πρώτη εκκίνηση το n8n δημιουργεί ένα τυχαίο κλειδί κρυπτογράφησης και το κρατά στον φάκελο δεδομένων του (/home/node/.n8n). Οι αποθηκευμένες συνδέσεις σας κρυπτογραφούνται με αυτό. Τα στοιχεία σύνδεσης σε μια βάση που έχει επαναφερθεί δεν μπορούν να αποκρυπτογραφηθούν χωρίς το κλειδί. Κρατήστε ξεχωριστό αντίγραφο του κλειδιού.
- Τι να αντιγράψετε: Το volume δεδομένων (
n8n_data) περιέχει την προεπιλεγμένη βάση SQLite και το κλειδί. Σταματήστε το n8n πριν αντιγράψετε. Αν χρησιμοποιείτε PostgreSQL, αντιγράψτε τη βάση ξεχωριστά με τα δικά της εργαλεία. - Γρήγορη εξαγωγή: Οι εντολές του n8n τρέχουν μέσα στο container. Οι
docker compose exec n8n n8n export:workflow --backup --output=/home/node/.n8n/backups/workflows/καιdocker compose exec n8n n8n export:credentials --backup --output=/home/node/.n8n/backups/credentials/γράφουν τα workflows και τις συνδέσεις στο volume δεδομένων. Οι χρήστες, το ιστορικό εκτελέσεων και οι ρυθμίσεις δεν περιλαμβάνονται, οπότε δεν αρκεί για πλήρη ανάκτηση. - Αντίγραφο ασφαλείας του server: Η Seturack αντιγράφει τον server σας κάθε βράδυ και κρατά τις τελευταίες 7 ημέρες. Αυτό καλύπτει και τα δεδομένα του n8n, αλλά είναι καλή ιδέα να εξάγετε ξεχωριστά τα κρίσιμα workflows σας.
Πόροι και βάση δεδομένων
Οι επίσημοι οδηγοί εγκατάστασης δεν δίνουν αριθμό για CPU ή μνήμη. Ως εμπειρικός κανόνας, τα ελαφριά και αραιά workflows τρέχουν σε μικρό server, ενώ τα workflows που χειρίζονται μεγάλα αρχεία ή πολλά δεδομένα χρειάζονται μνήμη. Παρακολουθήστε την πραγματική χρήση του container με το docker stats. Η προεπιλεγμένη βάση είναι SQLite. Για έντονη χρήση περνάτε στην PostgreSQL με DB_TYPE=postgresdb και εξακολουθείτε να κρατάτε το volume του φακέλου δεδομένων.
Αν ο server δεν αρκεί, αναβαθμίστε τον από το πάνελ. Η διεύθυνση IP και τα δεδομένα σας παραμένουν τα ίδια και οι διευθύνσεις των webhooks σας δεν αλλάζουν.
Ενημέρωση
Ο επίσημος οδηγός περιγράφει την ενημέρωση με τρεις εντολές: docker compose pull, docker compose down και docker compose up -d. Πάρτε πρώτα αντίγραφο ασφαλείας και διαβάστε τις σημειώσεις έκδοσης. Οι ενημερώσεις του λειτουργικού και των εφαρμογών είναι δική σας δουλειά μετά την εγκατάσταση.
Ασφάλεια
- Ανοίξτε το n8n μόνο μέσω HTTPS. Ο επίσημος οδηγός ακολουθεί την ίδια προσέγγιση.
- Δημιουργήστε τον λογαριασμό ιδιοκτήτη αμέσως μετά την εγκατάσταση και διαλέξτε ισχυρό κωδικό.
- Κρατήστε ανοιχτές στο firewall μόνο τις θύρες 22, 80 και 443. Επειδή το Docker προσπερνά τους κανόνες του ufw για τις θύρες που δημοσιεύει, μη δημοσιεύετε προς τα έξω τη θύρα 5678 του n8n.
Αν προτιμάτε να παραλείψετε αυτά τα βήματα, επιλέξτε τον server σας με προεγκατεστημένο n8n. Αν το εγκαθιστάτε μόνοι σας, ξεκινήστε από έναν server με εγκατεστημένο Docker.
Σχόλια0
Δεν υπάρχουν ακόμη σχόλια
Μοιραστείτε πρώτοι τις σκέψεις σας.
Συνδεθείτε ή εγγραφείτε για να αφήσετε σχόλιο.