Cara Deploy WhatsApp API Gateway (WAHA) di Linux VPS Murah Menggunakan Docker
Apa itu WAHA (WhatsApp HTTP API)?
WAHA (WhatsApp HTTP API) adalah solusi gateway WhatsApp open-source yang memungkinkan aplikasi backend Anda (Node.js, Laravel, Python, Go) untuk mengirim dan menerima pesan teks, media, dokumen, serta menangani webhook WhatsApp secara real-time melalui REST API standar.
Banyak penyedia gateway WhatsApp resmi mematok tarif per-percakapan (conversation-based pricing) yang membebani startup dan UMKM. Dengan melakukan self-hosting WAHA di atas Dahono Cloud NAT VPS, Anda memiliki kendali penuh atas nomor dan pengiriman pesan tanpa batasan kuota.
Langkah 1: Siapkan Server VPS NAT
Gunakan Dahono Cloud NAT VPS Plan S (RAM 2GB, NVMe SSD) di data center Jakarta agar latensi koneksi ke server WhatsApp dan pengguna Indonesia sangat minim.
Login via SSH:
ssh -p <PORT_SSH> root@<IP_SERVER>
Langkah 2: Jalankan WAHA via Docker
WAHA menyediakan image Docker resmi yang sangat ringan. Anda cukup mengeksekusi satu baris perintah berikut:
docker run -d \
--name waha \
--restart always \
-p 3000:3000 \
-e "WHATSAPP_HOOK_URL=http://<IP_SERVER>:<PORT_WEBHOOK>/api/webhook" \
-e "WHATSAPP_HOOK_EVENTS=message,message.any,state.change" \
-v waha_sessions:/app/.sessions \
devlikeapro/waha
Catatan Port: Karena menggunakan VPS NAT, map port internal
3000ke salah satu port publik forwarding yang dialokasikan di dashboard Dahono Anda (misal port 31080).
Langkah 3: Scan QR Code WhatsApp
Buka antarmuka Swagger Web UI WAHA di browser:
http://<IP_SERVER>:<PORT_PUBLIK>/dashboard
- Buka aplikasi WhatsApp di smartphone Anda $\rightarrow$ Linked Devices $\rightarrow$ Link a Device.
- Scan QR code yang tampil di dashboard WAHA.
- Tunggu status berubah menjadi WORKING.
Langkah 4: Uji Coba Kirim Pesan via cURL
Kini nomor Anda sudah siap mengirim pesan otomatis melalui REST API. Jalankan cURL berikut dari terminal:
curl -X POST "http://<IP_SERVER>:<PORT_PUBLIK>/api/sendText" \
-H "Content-Type: application/json" \
-d '{
"chatId": "[email protected]",
"text": "Halo! Pesan ini dikirim otomatis via WhatsApp Gateway mandiri di Dahono Cloud VPS 🚀",
"session": "default"
}'
Hanya dalam hitungan detik, pesan akan masuk ke nomor tujuan!
Tips Keamanan & Anti-Banned
- Gunakan nomor khusus operasional atau nomor bisnis resmi.
- Atur jeda waktu pengiriman (rate limit) antar pesan minimal 2–5 detik untuk menghindari deteksi spam WhatsApp.
- Padukan dengan Dahono Hermes Agent jika ingin menambahkan fitur balasan pintar berbasis AI otomatis 24/7.