Οι φιλοξενούμενες υπηρεσίες αυτοματισμών χρεώνουν ανά εργασία, και ο μετρητής γυρίζει ακόμη και για πράγματα που δεν είναι καν δουλειά. Ένα flow που ελέγχει ένα feed κάθε πέντε λεπτά κάνει 8.640 εκτελέσεις τον μήνα πριν προλάβει να κάνει οτιδήποτε χρήσιμο. Τρέξτε το ίδιο flow στον δικό σας server και ο λογαριασμός είναι ο server.
Το Activepieces είναι ένα εργαλείο αυτοματισμών ανοιχτού κώδικα: triggers, βήματα, διακλαδώσεις, μερικές εκατοντάδες έτοιμες ενσωματώσεις και βήματα κώδικα όταν οι έτοιμες δεν αρκούν. Η community έκδοση έχει άδεια MIT και τρέχει άνετα σε έναν μικρό server με Docker Compose.
Ποιο πακέτο
Το εγκαταστήσαμε σε δοκιμαστικό server και μετρήσαμε. Το προεπιλεγμένο αρχείο compose ξεκινά την εφαρμογή και πέντε workers: περίπου 2,6–3 GB RAM μαζί με Postgres και Redis. Με έναν worker πέφτει γύρω στο 1,6 GB.
| Τι τρέχετε | Πακέτο |
|---|---|
| Λίγα προσωπικά flows, ένας worker | Micro-IP: 2 vCPU, 2 GB, 25 GB ($10/μήνα), συν swap |
| Η προεπιλεγμένη διάταξη: πέντε workers, ομαδικά flows, webhooks | Small-IP: 4 vCPU, 4 GB, 35 GB ($16/μήνα) |
| Πολλές ταυτόχρονες εκτελέσεις, βαριά βήματα κώδικα | Medium-IP: 6 vCPU, 6 GB, 45 GB ($20/μήνα) |
Πάρτε πακέτο με δική του IPv4. Τα webhooks είναι ο κύριος λόγος να το φιλοξενείτε μόνοι σας, και οι υπηρεσίες που τα καλούν πρέπει να φτάνουν στις θύρες 80 και 443· στα πακέτα NAT απ' έξω είναι προσβάσιμη μόνο η θύρα SSH. Οι τοποθεσίες είναι Γερμανία και Φινλανδία — η διαθεσιμότητα φαίνεται κατά την παραγγελία. Μπορείτε να πληρώσετε με κρυπτονομίσματα, χωρίς KYC.
Εγκατάσταση
Πρώτα στρέψτε ένα domain — ας πούμε flows.example.com — στον server. Μετά, ως root σε Ubuntu 24.04 ή Debian 12:
curl -fsSL https://get.docker.com | sh
git clone --depth 1 https://github.com/activepieces/activepieces.git
cd activepieces
sh tools/deploy.sh
Το deploy.sh αντιγράφει το .env.example σε .env και συμπληρώνει τυχαία μυστικά. Πριν από την πρώτη εκκίνηση αλλάξτε δύο γραμμές στο .env και μία στο αρχείο compose:
sed -i 's|^AP_FRONTEND_URL=.*|AP_FRONTEND_URL=https://flows.example.com|; s|^AP_TELEMETRY_ENABLED=.*|AP_TELEMETRY_ENABLED=false|' .env
sed -i "s|- '8080:80'|- '127.0.0.1:8080:80'|" docker-compose.yml
Αυτή που μετράει είναι η πρώτη γραμμή. Το AP_FRONTEND_URL δεν είναι μόνο για τους συνδέσμους στο περιβάλλον: μέσω αυτού οι workers συνδέονται με την εφαρμογή. Αφήστε το http://localhost:8080 και κάθε container worker ψάχνει την εφαρμογή μέσα στον εαυτό του, δεν τη βρίσκει, και τα flows σας δεν δημοσιεύονται ποτέ. Ακριβώς αυτό πάθαμε: «Socket.IO connection error» στα logs του worker, ένα αίτημα δημοσίευσης που κόλλησε και webhooks που απαντούσαν 404. Με το πραγματικό domain το ίδιο flow δημοσιεύτηκε και το webhook έτρεξε.
Το sed στο docker-compose.yml κρατά τη θύρα 8080 στο localhost. Οι θύρες που δημοσιεύει το Docker παρακάμπτουν το ufw· χωρίς αυτό η εφαρμογή θα ήταν ανοιχτή σε μια γυμνή θύρα δίπλα στο HTTPS σας.
Στο Micro-IP κατεβείτε επίσης σε έναν worker:
sed -i 's/replicas: 5/replicas: 1/' docker-compose.yml
Τώρα HTTPS και εκκίνηση:
apt install -y caddy
cat > /etc/caddy/Caddyfile <<'EOF'
flows.example.com {
reverse_proxy 127.0.0.1:8080
}
EOF
systemctl reload caddy
ufw allow 22/tcp && ufw allow 80/tcp && ufw allow 443/tcp && ufw enable
docker compose -p activepieces up -d
Περιμένετε μισό λεπτό, ανοίξτε το https://flows.example.com και δημιουργήστε αμέσως τον λογαριασμό σας. Όποιος εγγραφεί πρώτος κατέχει την πλατφόρμα· μετά η εγγραφή γίνεται μόνο με πρόσκληση.
Ελέγξτε ότι τα webhooks δουλεύουν
Φτιάξτε ένα flow με το trigger Webhook (Catch Webhook), προσθέστε οποιοδήποτε βήμα και δημοσιεύστε το. Ο πίνακας του trigger δείχνει το URL. Στείλτε του ένα δοκιμαστικό γεγονός:
curl -X POST https://flows.example.com/api/v1/webhooks/YOUR_FLOW_ID \
-H 'content-type: application/json' \
-d '{"event":"payment.paid","amount":16}'
Πρέπει να πάρετε 200, και η εκτέλεση εμφανίζεται στα Runs ως επιτυχής. Αν αντί γι' αυτό πάρετε 404, γυρίστε πίσω και ελέγξτε το AP_FRONTEND_URL.
Στην καθημερινή λειτουργία
- Ενημερώσεις. Το αρχείο compose κλειδώνει ακριβή έκδοση (
0.92.2τη στιγμή της συγγραφής). Αλλάξτε το tag στοdocker-compose.ymlκαι μετάdocker compose -p activepieces pull && docker compose -p activepieces up -d. Ρίξτε πρώτα μια ματιά στις σημειώσεις έκδοσης· τα εργαλεία αυτοματισμών λατρεύουν να μετονομάζουν πράγματα. - Αντίγραφα ασφαλείας. Τα flows, οι συνδέσεις και το ιστορικό εκτελέσεων ζουν στο volume της Postgres. Κάντε dump με πρόγραμμα και κρατήστε το αντίγραφο εκτός server — οι συνδέσεις περιέχουν τα API tokens σας για άλλες υπηρεσίες.
- Τα βήματα κώδικα δεν τρέχουν σε sandbox σε αυτή τη διάταξη (
AP_EXECUTION_MODE=UNSANDBOXED). Ο server και τα flows είναι δικά σας, άρα είναι αποδεκτό. Παύει να είναι τη στιγμή που αφήνετε ανθρώπους που δεν εμπιστεύεστε να φτιάχνουν flows.
Αν ξέρετε ήδη το n8n, η ιδέα είναι ίδια — δείτε VPS για n8n. Διαλέξτε τον editor στον οποίο σκέφτεστε πιο εύκολα· και τα δύο τα πάνε καλά στα ίδια πακέτα.
Σχετικά
- VPS για n8n: το άλλο μεγάλο εργαλείο αυτοματισμών που φιλοξενείτε μόνοι σας
- Πολλές υπηρεσίες σε ένα VPS: το Activepieces δίπλα στην εφαρμογή σας και σε ένα dashboard, μία IP
- VPS για Docker
- Πώς να προσθέσετε swap σε VPS
- Πώς να ρυθμίσετε τείχος προστασίας ufw
Σχόλια
Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.