Hostede automatiseringstjenester tager betaling pr. opgave, og måleren kører også på ting, der knap nok er arbejde. Et flow, der tjekker et feed hvert femte minut, giver 8.640 kørsler om måneden, før det har gjort noget nyttigt overhovedet. Kør det samme flow på din egen server, og regningen er serveren.
Activepieces er et automatiseringsværktøj med åben kildekode: triggere, trin, forgreninger, et par hundrede færdige integrationer og kodetrin, når de færdige ikke slår til. Community-udgaven er under MIT-licens og kører fint på én lille server med Docker Compose.
Hvilken plan
Vi installerede det på en testserver og målte. Standardfilen for compose starter appen og fem workers: omkring 2,6–3 GB RAM sammen med Postgres og Redis. Med én worker falder det til cirka 1,6 GB.
| Hvad du kører | Plan |
|---|---|
| Et par personlige flows, én worker | Micro-IP: 2 vCPU, 2 GB, 25 GB ($10/md.), plus swap |
| Standardopsætningen: fem workers, teamflows, webhooks | Small-IP: 4 vCPU, 4 GB, 35 GB ($16/md.) |
| Mange kørsler på én gang, tunge kodetrin | Medium-IP: 6 vCPU, 6 GB, 45 GB ($20/md.) |
Vælg en plan med egen IPv4. Webhooks er hovedgrunden til at køre det selv, og de tjenester, der kalder dem, skal nå port 80 og 443; på NAT-planer kan man udefra kun nå SSH-porten. Placeringerne er Tyskland og Finland; tilgængeligheden ses ved bestilling. Du kan betale med krypto, uden KYC.
Installation
Peg først et domæne, for eksempel flows.example.com, på serveren. Derefter som root på Ubuntu 24.04 eller 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 kopierer .env.example til .env og udfylder tilfældige hemmeligheder. Før første start ændrer du to linjer i .env og én i compose-filen:
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
Det er den første linje, der tæller. AP_FRONTEND_URL er ikke kun til links i brugerfladen: workers forbinder til appen gennem den. Lader du den stå på http://localhost:8080, leder hver worker-container efter appen i sig selv, finder den ikke, og dine flows bliver aldrig publiceret. Netop det skete for os: „Socket.IO connection error” i worker-loggene, en publicering, der hang, og webhooks, der svarede 404. Med det rigtige domæne blev det samme flow publiceret, og webhooken kørte.
sed på docker-compose.yml holder port 8080 på localhost. Porte, som Docker udgiver, går uden om ufw, så uden linjen ville appen stå åben på en rå port ved siden af din HTTPS.
På Micro-IP går du også ned på én worker:
sed -i 's/replicas: 5/replicas: 1/' docker-compose.yml
Nu HTTPS og start:
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
Vent et halvt minut, åbn https://flows.example.com, og opret din konto med det samme. Den, der tilmelder sig først, ejer platformen; derefter sker tilmelding kun via invitation.
Tjek, at webhooks virker
Opret et flow med triggeren Webhook (Catch Webhook), tilføj et vilkårligt trin, og publicér det. Triggerpanelet viser URL'en. Send en testhændelse dertil:
curl -X POST https://flows.example.com/api/v1/webhooks/YOUR_FLOW_ID \
-H 'content-type: application/json' \
-d '{"event":"payment.paid","amount":16}'
Du bør få en 200, og kørslen dukker op under Runs som gennemført. Får du i stedet 404, så gå tilbage og tjek AP_FRONTEND_URL.
Til den daglige drift
- Opdateringer. Compose-filen låser en præcis version (
0.92.2i skrivende stund). Skift tagget idocker-compose.yml, og kør sådocker compose -p activepieces pull && docker compose -p activepieces up -d. Skim release notes først; automatiseringsværktøjer elsker at omdøbe ting. - Backup. Flows, forbindelser og kørselshistorik ligger i Postgres-volumen. Tag et dump efter en fast plan, og opbevar kopien uden for serveren — forbindelserne indeholder dine API-tokens til andre tjenester.
- Kodetrin kører ikke i sandkasse i denne opsætning (
AP_EXECUTION_MODE=UNSANDBOXED). Det er din server og dine flows, så det er acceptabelt. Det holder op med at være det, i samme øjeblik du lader folk, du ikke stoler på, bygge flows.
Kender du allerede n8n, er idéen den samme — se VPS til n8n. Vælg den editor, du har lettest ved at tænke i; begge trives på de samme planer.
Relateret
- VPS til n8n: det andet store selvhostede automatiseringsværktøj
- Flere tjenester på én VPS: Activepieces ved siden af din app og et dashboard, én IP
- VPS til Docker
- Sådan tilføjer du swap på en VPS
- Sådan sætter du en ufw-firewall op
Kommentarer
Ingen kommentarer endnu. Vær den første.