ہوسٹڈ آٹومیشن سروسز ہر ٹاسک کے پیسے لیتی ہیں، اور میٹر ان چیزوں پر بھی چلتا ہے جو اصل میں کام ہی نہیں۔ ہر پانچ منٹ میں ایک فیڈ چیک کرنے والا فلو کوئی کام کی چیز کرنے سے پہلے ہی مہینے میں 8,640 رن بن جاتا ہے۔ وہی فلو اپنے سرور پر چلائیں، اور بل صرف سرور کا ہوگا۔
Activepieces ایک اوپن سورس آٹومیشن بلڈر ہے: ٹرگر، اسٹیپس، شاخیں، چند سو تیار انٹیگریشنز، اور جب تیار والی کافی نہ ہوں تو کوڈ اسٹیپس۔ کمیونٹی ایڈیشن MIT لائسنس میں ہے اور Docker Compose کے ساتھ ایک چھوٹے سرور پر آرام سے چلتا ہے۔
کون سا پلان
ہم نے اسے ٹیسٹ سرور پر لگایا اور ناپا۔ ڈیفالٹ compose فائل ایپ اور پانچ worker چلاتی ہے: Postgres اور Redis کے ساتھ تقریباً 2.6–3 GB RAM۔ ایک worker پر لانے سے یہ تقریباً 1.6 GB رہ جاتا ہے۔
| آپ کیا چلاتے ہیں | پلان |
|---|---|
| چند ذاتی فلو، ایک worker | Micro-IP: 2 vCPU، 2 GB، 25 GB ($10/ماہ)، swap شامل کریں |
| ڈیفالٹ سیٹ اپ: پانچ worker، ٹیم کے فلو، webhook | Small-IP: 4 vCPU، 4 GB، 35 GB ($16/ماہ) |
| ایک ساتھ بہت سے رن، بھاری کوڈ اسٹیپس | Medium-IP: 6 vCPU، 6 GB، 45 GB ($20/ماہ) |
اپنے IPv4 والا پلان لیں۔ اسے خود ہوسٹ کرنے کی بڑی وجہ webhook ہیں، اور انہیں کال کرنے والی سروسز کو پورٹ 80 اور 443 تک پہنچنا ہوتا ہے؛ NAT پلانز پر باہر سے صرف SSH پورٹ تک رسائی ہوتی ہے۔ لوکیشنز جرمنی اور فن لینڈ ہیں؛ دستیابی آرڈر کرتے وقت دکھائی دیتی ہے۔ چاہیں تو کرپٹو میں ادائیگی کریں، KYC نہیں۔
انسٹالیشن
پہلے ایک ڈومین — مثلاً flows.example.com — سرور کی طرف اشارہ کریں۔ پھر Ubuntu 24.04 یا Debian 12 پر root کے طور پر:
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 صرف انٹرفیس کے لنکس کے لیے نہیں: worker اسی کے ذریعے ایپ سے جڑتے ہیں۔ اسے http://localhost:8080 پر چھوڑ دیں تو ہر worker کنٹینر ایپ کو اپنے ہی اندر ڈھونڈتا ہے، نہیں پاتا، اور آپ کے فلو کبھی پبلش نہیں ہوتے۔ ہمارے ساتھ بالکل یہی ہوا: worker لاگز میں «Socket.IO connection error»، اٹکی ہوئی پبلش ریکوئسٹ اور 404 دیتے webhook۔ اصل ڈومین ڈالتے ہی وہی فلو پبلش ہو گیا اور webhook چل گیا۔
فائل docker-compose.yml پر چلایا گیا sed پورٹ 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 کھولیں اور فوراً اپنا اکاؤنٹ بنائیں۔ جو پہلے سائن اپ کرے وہی پلیٹ فارم کا مالک ہے؛ اس کے بعد سائن اپ صرف دعوت سے ہوتا ہے۔
جانچیں کہ webhook کام کر رہے ہیں
ٹرگر Webhook (Catch Webhook) والا ایک فلو بنائیں، کوئی بھی اسٹیپ شامل کریں اور پبلش کریں۔ ٹرگر پینل میں 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)۔docker-compose.ymlمیں ٹیگ بدلیں، پھرdocker compose -p activepieces pull && docker compose -p activepieces up -d۔ پہلے release notes پر نظر ڈالیں؛ آٹومیشن ٹولز چیزوں کے نام بدلنا پسند کرتے ہیں۔ - بیک اپ۔ فلو، کنکشنز اور رن ہسٹری Postgres والیوم میں رہتے ہیں۔ طے شدہ وقت پر ڈمپ لیں اور کاپی سرور سے باہر رکھیں — کنکشنز میں دوسری سروسز کے آپ کے API ٹوکن ہوتے ہیں۔
- کوڈ اسٹیپس sandbox میں نہیں چلتے اس سیٹ اپ میں (
AP_EXECUTION_MODE=UNSANDBOXED)۔ سرور آپ کا ہے اور فلو آپ کے، اس لیے یہ قابل قبول ہے۔ جس لمحے آپ ایسے لوگوں کو فلو بنانے دیتے ہیں جن پر بھروسہ نہیں، یہ قابل قبول نہیں رہتا۔
اگر آپ n8n پہلے سے جانتے ہیں تو خیال وہی ہے — دیکھیں سرور VPS برائے n8n۔ وہ ایڈیٹر چنیں جس میں سوچنا آسان لگے؛ دونوں ایک ہی پلانز پر اچھے چلتے ہیں۔
متعلقہ
- سرور VPS برائے n8n: خود ہوسٹ ہونے والا دوسرا بڑا آٹومیشن ٹول
- ایک VPS پر کئی سروسز: آپ کی ایپ اور ڈیش بورڈ کے ساتھ Activepieces، ایک IP
- سرور VPS برائے Docker
- VPS پر swap کیسے شامل کریں
- فائر وال ufw کیسے سیٹ کریں
تبصرے
ابھی کوئی تبصرہ نہیں۔ پہلے بنیں۔