−25%

στα Windows με ετήσια χρέωση, έως 31/10. Δείτε τα πακέτα

EQVPS
Ξεκινήστε

VPS για Activepieces: δικός σας αυτοματισμός

Το Activepieces, το εργαλείο αυτοματισμών ανοιχτού κώδικα, στον δικό σας server: χωρίς χρέωση ανά εργασία, webhooks στο domain σας. Δοκιμασμένη εγκατάσταση.

Οι φιλοξενούμενες υπηρεσίες αυτοματισμών χρεώνουν ανά εργασία, και ο μετρητής γυρίζει ακόμη και για πράγματα που δεν είναι καν δουλειά. Ένα 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, ένας workerMicro-IP: 2 vCPU, 2 GB, 25 GB ($10/μήνα), συν swap
Η προεπιλεγμένη διάταξη: πέντε workers, ομαδικά flows, webhooksSmall-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 στον οποίο σκέφτεστε πιο εύκολα· και τα δύο τα πάνε καλά στα ίδια πακέτα.

Σχετικά

Έτοιμοι για ανάπτυξη; Πληρωμή με crypto, χωρίς KYC — έτοιμο σε περίπου ένα λεπτό.

Ανάπτυξη τώρα →

Συχνές ερωτήσεις

Πόση RAM χρειάζεται το Activepieces;

Το προεπιλεγμένο docker-compose.yml ξεκινά την εφαρμογή και πέντε workers· στον δοκιμαστικό μας server, μαζί με Postgres και Redis, αυτό έφτασε περίπου τα 2,6–3 GB. Με έναν worker ήταν γύρω στο 1,6 GB. Το Small-IP (4 GB) τρέχει την προεπιλεγμένη διάταξη με περιθώριο· το Micro-IP (2 GB) δουλεύει μόνο με έναν worker και αρχείο swap.

Το flow μου δεν δημοσιεύεται και το webhook απαντά 404. Τι φταίει;

Ελέγξτε το AP_FRONTEND_URL. Οι workers φτάνουν στην εφαρμογή μέσω αυτής της διεύθυνσης, και αν έχει μείνει http://localhost:8080, το «localhost» μέσα σε container worker είναι ο ίδιος ο worker. Δεν μπορούν να συνδεθούν, η δημοσίευση κολλάει και τα webhooks επιστρέφουν 404. Βάλτε το πραγματικό σας domain με https:// πριν από την πρώτη εκκίνηση.

Χρειάζομαι δική μου διεύθυνση IP;

Ναι, αν χρησιμοποιείτε webhooks — και οι περισσότεροι χρησιμοποιούν. Οι υπηρεσίες που καλούν τα flows σας πρέπει να φτάνουν στις θύρες 80 και 443 του domain σας, και ένα πακέτο NAT δέχεται απ' έξω μόνο τη θύρα SSH σας.

Μπορεί οποιοσδήποτε να εγγραφεί στο instance μου;

Μόνο ο πρώτος. Στη δοκιμή μας η πρώτη εγγραφή πέρασε και η δεύτερη πήρε «User is not invited to the platform»: μετά τον πρώτο λογαριασμό η εγγραφή γίνεται μόνο με πρόσκληση. Δημιουργήστε λοιπόν τον λογαριασμό σας μόλις ανέβει ο ιστότοπος, πριν τη βρει κάποιος άλλος.

Τα βήματα κώδικα είναι απομονωμένα;

Όχι εξ ορισμού: η διάταξη compose εκτελεί τα βήματα κώδικα με AP_EXECUTION_MODE=UNSANDBOXED, μέσα στον worker. Είναι εντάξει όσο flows φτιάχνετε μόνο εσείς και άνθρωποι που εμπιστεύεστε. Μη δίνετε πρόσβαση στον editor σε αγνώστους σε αυτή την εγκατάσταση.

Σχόλια

Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.

Αφήστε ένα σχόλιο

Τα σχόλια ελέγχονται πριν εμφανιστούν.