Daftar Isi
WAHA (WhatsApp HTTP API) adalah sebuah aplikasi open-source yang memungkinkan kita untuk menjalankan WhatsApp API sendiri di server kita, termasuk di VPS. Dengan WAHA, kita dapat mengirim dan menerima pesan WhatsApp melalui interface HTTP.
Disclaimer
WAHA tidak terkait secara resmi pada WhatsApp, Facebook, atau Meta, sehingga tidak ada jaminan bahwa WAHA akan selalu bebas dari risiko pemblokiran oleh pihak WhatsApp.
Pada artikel ini MinHost ingin berbagi cara menginstal dan menjalankan WAHA di VPS. Di sini MinHost menggunakan VPS Pay as You Go dari Citrahost dengan spesifikasi CPU 2 Core, RAM 2GB dan sistem operasi Ubuntu 24.04. Baca sampai selesai ya!
Langkah-langkah Instalasi WAHA di VPS
Menginstal Docker
WAHA berjalan di container docker, oleh karena itu kita perlu menginstal docker terlebih dahulu. Berikut tahapan menginstal docker di Ubuntu 24.04.
apt update -y
apt upgrade -y
curl -sSL https://get.docker.com | sh
Setelah proses instalasi selesai, cek service docker dengan perintah systemctl status docker. Jika service docker sudah berjalan, kita siap untuk lanjut ke langkah berikutnya.

Buat Direktori Untuk Menjalankan WAHA
Buat direktori dengan nama waha.
mkdir waha && cd waha
Pull Image
Setelah instalasi docker dan membuat direktori, selanjutnya kita perlu melakukan pull (semacam mengunduh) image WAHA yang ada di repository docker.
docker pull devlikeapro/waha
Unduh File Konfigurasi WAHA
Kita membutuhkan dua buah file untuk menjalankan WAHA di VPS, yang pertama adalah file .env dan yang kedua adalah file docker-compose. Kedua file inilah yang nantinya akan kita edit.
Unduh dahulu file .env dengan perintah berikut.
wget -O .env https://raw.githubusercontent.com/devlikeapro/waha/refs/heads/core/.env.example
root@waha:~/waha# wget -O .env https://raw.githubusercontent.com/devlikeapro/waha/refs/heads/core/.env.example
Kemudian unduh file docker-compose nya.
wget -O docker-compose.yaml https://raw.githubusercontent.com/devlikeapro/waha/refs/heads/core/docker-compose.yaml
root@waha:~/waha# wget -O docker-compose.yaml https://raw.githubusercontent.com/devlikeapro/waha/refs/heads/core/docker-compose.yaml
Isi direktori waha kurang lebih seperti berikut.
root@waha:~/waha# ls -lah
total 16K
drwxr-xr-x 2 root root 4.0K Sep 16 15:10 .
drwx—— 6 root root 4.0K Sep 16 15:09 ..
-rw-r–r– 1 root root 2.7K Sep 16 15:10 docker-compose.yaml
-rw-r–r– 1 root root 3.6K Sep 16 15:09 .env
root@waha:~/waha#
Konfigurasi File
Edit file .env. Beberapa konfigurasi yang diubah antara lain:
WAHA_BASE_URL=http://localhost:3000
WAHA_API_KEY=sha512:c7ad44cbad762a5da0a452f9e854fdc1e0e7a52a38015f23f3eab1d80b931dd4…
WAHA_DASHBOARD_USERNAME=admin
WAHA_DASHBOARD_PASSWORD=admin
WHATSAPP_SWAGGER_USERNAME=admin
WHATSAPP_SWAGGER_PASSWORD=admin
WAHA_BASE_URL bisa kita ubah dengan nama domain yang kita miliki.
WAHA_API_KEY perlu diubah karena secara default nilainya adalah “admin” namun sudah dihash. Meski begitu tetap direkomendasikan untuk diubah. Untuk membuat API Key yang unik kita bisa menggunakan perintah berikut,
uuidgen | tr -d ‘-’
Silakan catat output dari perintah di atas. Selanjutnya lakukan hash untuk key tadi dengan perintah berikut,
echo -n ‘random_generated_key’ | shasum -a 512
Catat outputnya. Kemudian ubah variabel WAHA_API_KEY dengan nilai berikut,
sha:512{hasil_hash_dari_random_key_tadi}
Untuk variabel-variabel lainnya silakan disesuaikan. Contoh konfigurasi akhir untuk file .env adalah seperti berikut.
WAHA_BASE_URL=http://waha.citrayoga.my.id:3000
WAHA_API_KEY=sha512:3f7c1327d8902c487d59b901551a30532f3b6b9c64fb3ad8f129dd0fdffa0d1ea…
WAHA_DASHBOARD_ENABLED=True
WAHA_DASHBOARD_USERNAME=bakwan
WAHA_DASHBOARD_PASSWORD=bakwanJagung88!
WHATSAPP_SWAGGER_ENABLED=True
WHATSAPP_SWAGGER_USERNAME=bakwan
WHATSAPP_SWAGGER_PASSWORD=bakwanJagung88!
Selanjutnya kita akan melakukan sedikit modifikasi pada file docker-compose.yaml.
Ubah bagian berikut,
image: devlikeapro/waha-plus
ports:
– '127.0.0.1:3000:3000/tcp'
Menjadi seperti berikut,
image: devlikeapro/waha
ports:
– '3000:3000'

Apa perubahan yang dilakukan? Kita mengganti image yang akan digunakan oleh service waha yakni dari devlikeapro/waha-plus menjadi devlikeapro/waha. Kemudian kita mengubah binding port secara global agar nantinya WAHA bisa diakses dari internet.
Menjalankan Compose
Jalankan perintah docker compose up -d. Perintah ini akan membuat container-container yang telah didefinisikan di dalam file docker-compose.yaml.
docker compose up -d
root@waha:~/waha# docker compose up -d

Setelah container sudah up semua, kita dapat mengakses dashboard WAHA dengan url http://nama_domain:3000/dashboard. Apabila tidak memiliki domain, maka dapat diganti dengan IP Address dari VPS (pastikan sudah menyamakan konfigurasi WAHA_BASE_URL pada file .env).

Kita akan diminta login menuju dashboard. Silakan masukkan kredensial sesuai dengan konfigurasi WAHA_DASHBOARD_USERNAME dan WAHA_DASHBOARD_PASSWORD pada file .env.

Setelah masuk ke dalam dashboard, apabila muncul pesan error seperti pada gambar, jangan panik. Pesan tersebut muncul karena konfigurasi worker WAHA belum sesuai.
Konfigurasi Worker WAHA
Untuk memperbaiki error yang muncul saat di awal masuk dashboard tadi, kita akan mengedit konfigurasi worker WAHA. Tekan tombol berwarna hijau dengan icon pensil.

Kemudian ubah API Key sesuai dengan key yang sudah dibuat pada langkah-langkah sebelumnya tadi. Setelah itu tekan Save.

Apabila konfigurasi API Key benar maka pada bagian API akan berubah menjadi centang warna hijau.

Menjalankan Session
Untuk memulai session, tekan tombol warna hijau dengan icon play.

Apabila session berhasil berjalan, maka pada bagian Status akan menjadi SCAN_QR_CODE. Selanjutnya tekan tombol warna ungu dengan icon kamera untuk menampilkan kode QR CODE.

Lakukan scan QR Code dari Whatsapp di smartphone kamu melalui opsi Linked devices.
Jika sukses terhubung, maka status session akan menjadi WORKING dan akan muncul akun dengan nomor telepon Whatsapp yang kamu hubungkan tadi.

Pengetesan
Sekarang kita bisa lakukan tes dengan mengirim pesan ke nomor whatsapp kita. Tekan tombol warna abu pada kolom Status.

Kamu bisa melakukan modifikasi pada body request atau bisa langsung tekan tombol Send.

Dapat dilihat pada gambar, ada chat masuk dari Id yang digunakan pada body request. Contoh lain kalau kamu melakukan modifikasi body request.

Pada contoh di atas MinHost mengubah chatId menjadi Id milik MinHost sendiri dan mengubah isi pesan pada bagian ‘text’. Setelah menekan tombol Send, pesan masuk ke Whatsapp MinHost yang dapat dilihat pada gambar.
Hore! Kamu berhasil menjalankan WAHA di VPS. Sekian artikel dari MinHost tentang cara menginstal dan menjalankan WAHA di VPS. Kalau kamu butuh VPS jangan ragu untuk pakai VPS Citrahost. Semoga bermanfaat!
Tautan terkait:
VPS Murah
VPS RDP
VPS Pay as You Go





