Panduan Install WhatsApp API Whapi di Linux Ubuntu
Panduan instalasi Whapi di VPS Linux Ubuntu, mencakup persiapan Node.js dan Nginx, instalasi aplikasi, konfigurasi reverse proxy untuk akses tanpa port, dan optimasi RAM menggunakan Jemalloc.
Prasyarat
- VPS dengan OS Ubuntu 20.04 atau lebih baru
- Akses root ke VPS
- Koneksi internet stabil
Langkah 1: Instal Node.js dan Nginx
Login ke VPS sebagai root, lalu jalankan:
curl -sL https://deb.nodesource.com/setup_22.x | sudo -E bash - && \
sudo apt update && \
sudo apt install git -y && \
sudo apt install nodejs && \
sudo apt-get install -y nginx && \
node --version && \
git --version
Perintah ini melakukan lima hal sekaligus: menambahkan repositori Node.js, memperbarui daftar paket, install git, instal Node.js, dan instal Nginx. Perintah terakhir menampilkan versi Node.js dan git sebagai konfirmasi instalasi berhasil.
Langkah 2: Unduh dan Instal Aplikasi Whapi
Unduh Aplikasi
Kunjungi halaman unduhan, masukkan license key, nama, dan email:
Download AplikasiBuat Direktori dan Upload File
mkdir whapi-v4 && cd whapi-v4
Upload file .zip yang sudah diunduh ke direktori whapi-v4 menggunakan SFTP atau pscp dari PuTTY. Setelah terupload, ekstrak file:
unzip nama_file.zip
Ganti nama_file.zip dengan nama file yang diunduh.
Instal Dependensi
npm install pm2 -g && npm install
Pastikan koneksi internet stabil selama proses ini.
Jalankan Aplikasi
pm2 start
Jika pm2 belum terinstal, jalankan npm install pm2 -g terlebih dahulu.
Sumber dan panduan tambahan:
Panduan Menjalankan Aplikasi WhapiLangkah 3: Konfigurasi Nginx - Akses Tanpa Port (Opsional)
Secara default Whapi berjalan di port 3000. Konfigurasi Nginx berikut memungkinkan akses langsung via domain atau IP tanpa menuliskan port.
Edit Konfigurasi Nginx
sudo nano /etc/nginx/sites-available/default
Temukan blok location / yang berisi try_files dan ganti dengan konfigurasi proxy berikut:
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
Sesuaikan nilai port 3000 jika port Whapi sudah diubah di .env.
Uji dan Restart Nginx
sudo nginx -t
sudo service nginx restart
Setelah konfigurasi berhasil, Whapi dapat diakses langsung melalui domain atau IP VPS tanpa menuliskan port.
Langkah 4: Instal Jemalloc untuk Optimasi RAM (Opsional)
Jemalloc adalah library manajemen memori yang dapat mengurangi penggunaan RAM Node.js hingga 70–80%. Cocok untuk server dengan traffic tinggi.
Instal Jemalloc
sudo apt-get update -y && sudo apt-get install -y libjemalloc-dev
Hapus Aplikasi
pm2 delete whapi
Temukan Lokasi Library
sudo find / -name "*jemalloc*"
Cari path yang berakhiran libjemalloc.so, contoh:
/usr/lib/x86_64-linux-gnu/libjemalloc.so

Load Library dan Jalankan Kembali
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so
pm2 start
Sesuaikan path dengan hasil yang ditemukan di langkah sebelumnya.
Verifikasi Jemalloc Aktif
Dapatkan PID proses Whapi dengan pm2 list, lalu jalankan:
sudo cat /proc/<PID>/smaps | grep jemalloc
Ganti <PID> dengan PID aplikasi dari pm2 list.
Jika output menampilkan data jemalloc, library sudah aktif:

Error Umum dan Solusinya
| Kondisi | Penyebab | Solusi |
|---|---|---|
npm install gagal | Koneksi tidak stabil atau Node.js versi lama | Periksa koneksi dan jalankan node --version untuk verifikasi |
Error saat nginx -t | Kesalahan sintaks di konfigurasi | Periksa kembali blok location / di file konfigurasi Nginx |
| Aplikasi tidak bisa diakses tanpa port | Nginx belum direstart | Jalankan sudo service nginx restart |
| Jemalloc tidak terdeteksi | Path library salah | Jalankan ulang sudo find / -name "*jemalloc*" dan gunakan path yang benar |
Selesai. Bandingkan penggunaan RAM sebelum dan sesudah menggunakan Jemalloc untuk melihat perbedaan.