Heroku menghapus free tier di November 2022. Banyak developer Indonesia yang sebelumnya bergantung pada Heroku harus mencari alternatif — dan banyak yang masih bingung harus migrate ke mana.
Helipod adalah salah satu alternatif terbaik untuk developer Indonesia: bayar Rupiah, tanpa kartu kredit, dan deployment yang lebih mudah dari Heroku.
Artikel ini menjelaskan cara migrate dari Heroku ke Helipod step-by-step.
Kenapa Migrate dari Heroku?
| Heroku | Helipod | |
|---|---|---|
| Free tier | ❌ Tidak ada | ⚠️ 1 GB storage gratis |
| Harga minimum | $7/bulan (~Rp 112.000) | Rp 350/hari (~Rp 10.500/bulan) |
| Kartu kredit | ✅ Diperlukan | ❌ QRIS & Transfer |
| Bayar Rupiah | ❌ Dollar | ✅ |
| Server Indonesia | ❌ | 🔜 Coming soon |
| Database | ⚠️ Add-on berbayar | ✅ Deploy dalam project |
Persiapan Migration
1. Audit Aplikasi Heroku
Sebelum migrate, catat konfigurasi Heroku kamu:
# Lihat config Heroku
heroku config --app your-app-name
# Lihat addons
heroku addons --app your-app-name
# Lihat processes
heroku ps --app your-app-name
# Lihat buildpacks
heroku buildpacks --app your-app-name
2. Backup Database
# Backup PostgreSQL
heroku pg:backups:download --app your-app-name
# Atau export langsung
heroku pg:psql DATABASE_URL --app your-app-name -c "\copy (SELECT * FROM users) TO 'users.csv' CSV HEADER"
3. Catat Environment Variables
# Export semua env vars
heroku config --app your-app-name --json > heroku-config.json
Step-by-Step Migration
Step 1: Buat Project di Helipod
- Login ke helipod.io
- Klik New Project
- Beri nama project (bisa sama dengan nama Heroku app)
Step 2: Deploy Database (Jika Ada)
Jika aplikasi pakai PostgreSQL:
- Klik Add Service → pilih PostgreSQL
- Atur resource (0.5 vCPU, 1GB RAM recommended)
- Deploy
- Catat connection string:
postgresql://user:password@postgres-db:5432/dbname
Step 3: Deploy Aplikasi
- Klik Add Service → GitHub/GitLab
- Connect repo yang sama dengan Heroku
- Helipod akan auto-detect framework
Catatan: Jika pakai buildpacks khusus di Heroku, mungkin perlu tambahkan Dockerfile.
Step 4: Set Environment Variables
Di tab Variables, tambahkan semua env vars dari Heroku:
# Database
DATABASE_URL=postgresql://user:pass@postgres-db:5432/myapp
# API Keys
STRIPE_SECRET_KEY=sk_live_xxx
SENDGRID_API_KEY=SG.xxx
# App Config
APP_URL=https://your-app.helipod.app
NODE_ENV=production
Perbedaan penting:
- Heroku pakai
postgres://→ Helipod pakaipostgresql:// - Heroku pakai
DATABASE_URL→ Helipod juga supportDATABASE_URL - Heroku punya
Dyno→ Helipod pakai resource allocation (CPU/RAM)
Step 5: Migrate Database
# Import backup ke Helipod
psql -h postgres-db -U user -d dbname -f backup.sql
Atau gunakan pg_dump dan pg_restore:
# Dump dari Heroku
pg_dump -h heroku-postgres-host -U user -d dbname > dump.sql
# Restore ke Helipod
psql -h postgres-db -U user -d dbname < dump.sql
Step 6: Deploy
Klik Deploy. Helipod akan:
- Build image
- Deploy container
- Setup SSL & domain
- Connect ke database
Step 7: Test
- Buka URL yang diberikan Helipod
- Test semua fitur
- Test koneksi database
- Cek logs untuk error
Step 8: Update Domain (Jika Perlu)
Jika pakai custom domain di Heroku:
- Tambahkan custom domain di Helipod (Settings → Networking & Domains)
- Update DNS records
- Tunggu propagasi
- Hapus domain dari Heroku
Perbedaan Penting: Heroku vs Helipod
Process Management
# Heroku — pakai Procfile
web: node server.js
worker: node worker.js
# Helipod — pakai Dockerfile atau auto-detect
# Tidak perlu Procfile — Helipod detect dari package.json
Scaling
# Heroku — scale dynos
heroku ps:scale web=1 --app your-app-name
# Helipod — slider di dashboard
# Atur CPU dan RAM langsung dari UI
Database
# Heroku — add-on
heroku addons:create heroku-postgresql:essential-0 --app your-app-name
# Helipod — service dalam project
# Klik Add Service → PostgreSQL
Logs
# Heroku — CLI
heroku logs --tail --app your-app-name
# Helipod — dashboard
# Tab Logs → real-time, filterable
Checklist Migration
- Audit aplikasi Heroku (config, addons, processes)
- Backup database
- Catat semua environment variables
- Buat project di Helipod
- Deploy database (jika ada)
- Deploy aplikasi
- Set environment variables
- Migrate data database
- Test semua fitur
- Update custom domain (jika perlu)
- Monitor logs dan metrics
- Hapus Heroku app (setelah yakin)
Troubleshooting Migration
"Application Error" setelah deploy
- Cek logs di tab Logs
- Pastikan
PORTenvironment variable diatur - Pastikan aplikasi listen di
0.0.0.0, bukanlocalhost
Database connection failed
- Pastikan
DATABASE_URLbenar - Pastikan database service sudah deployed
- Cek hostname dan port
Build gagal
- Pastikan ada
package.json(Node.js) ataurequirements.txt(Python) - Jika pakai buildpacks khusus, tambahkan Dockerfile
- Cek build logs di tab Deployments
SSL/TLS error
- Tunggu beberapa menit setelah deploy
- Pastikan domain sudah benar
- Jika pakai Cloudflare, gunakan Grey Cloud
FAQ
Berapa biaya migration?
Migration ke Helipod gratis. Biaya hanya untuk resource yang kamu pakai — mulai Rp 350/hari.
Apakah ada downtime?
Tidak ada downtime jika kamu setup Helipod terlebih dahulu, test, lalu switch DNS. Zero-downtime migration.
Bagaimana dengan buildpacks?
Helipod tidak pakai buildpacks — tapi auto-detect framework dan generate Dockerfile. Jika pakai buildpacks khusus, tambahkan Dockerfile di repo.
Bisa pakai Procfile?
Tidak perlu. Helipod auto-detect entry point dari package.json (Node.js), requirements.txt (Python), atau composer.json (PHP).
Bagaimana dengan Heroku Scheduler?
Helipod punya fitur cron jobs. Kamu bisa setup scheduling dari dashboard atau helipack.json.
Kesimpulan
Migration dari Heroku ke Helipod tidak rumit. Dengan panduan di atas, kamu bisa migrate dalam waktu 30-60 menit — dan hemat biaya hingga 90%.
Mulai migration di helipod.io — tidak perlu kartu kredit.
Punya pertanyaan? Hubungi kami di support@helipod.id atau bergabung ke komunitas di hangar.helipod.io.