Cara Deploy Umami di NAT VPS

NATVPS.idUmami adalah alat analitik web open-source sebagai alternatif Google Analytics. Umami ini memberikan informasi penting mengenai lalu lintas situs web, perilaku pengguna, dan kinerja, sekaligus memprioritaskan privasi data.

Artikel ini membahas mengenai langkah-langkah deploy Umami di NAT VPS menggunakan Docker, beserta konfigurasi NGINX untuk reverse-proxy. Artikel ini menggunakan Ubuntu 22.04 sebagai acuan, namun Anda dapat menggunakan distribusi lain seperti Debian dan CentOS. Pastikan OS yang digunakan mendukung Docker.

Konfigurasi Port Forwarding

Mengingat kita menggunakan NAT, kita perlu menambahkan 2 konfigurasi port forwarding pada panel Virtualizor (atau panel VPS lain sesuai provider), yaitu port forwarding HTTP dan HTTPS untuk domain Umami.

Sebagai contoh, pada artikel ini akan menggunakan domain analytics.tutorial.mdinata.my.id untuk mengakses Umami. Anda bebas mengganti domain sesuai pilihan Anda. Catat port dan domain ini, karena kita akan menggunakannya lagi pada proses deploy.

Jangan lupa untuk menambahkan DNS record yang menuju ke IP publik NAT VPS Anda, seperti ini:

Install Docker

Kita akan menggunakan Docker dan Docker Compose untuk deploy Umami.

Pertama, Install curl menggunakan perintah:

apt update && apt install curl -y

Kemudian, jalankan script instalasi otomatis dari Docker dengan memasukkan:

curl -fsSL get.docker.com | sh

Tunggu hingga proses instalasi selesai.

Deploy Umami

Umami menyediakan konfigurasi Docker Compose yang siap digunakan di repositorinya, sehingga kita tidak perlu membuat file konfigurasi docker-compose.yml dari awal.

Buat direktori baru:

mkdir umami
cd umami/

Install wget (jika belum) dan unduh konfigurasi Docker Compose dari repositori Umami:

apt install wget -y # jika belum
wget https://github.com/umami-software/umami/raw/refs/heads/master/docker-compose.yml

Konfigurasi tidak perlu diubah, namun Anda bebas mengubahnya jika perlu.

Jalankan Umami:

docker compose up -d

Tunggu hingga proses deploy selesai. Deploy pertama kali dapat memakan waktu beberapa menit karena harus mengunduh seluruh image dari awal.

Konfigurasi NGINX (Reverse Proxy)

Agar kita dapat mengakses URL melalui domain seperti server-tutorial.mdinata.my.id, kita dapat menggunakan reverse proxy seperti NGINX.

Pertama, install NGINX melalui perintah:

# Hapus Apache2 dan pendukungnya (biasanya terpasang secara bawaan di VPS OpenVZ)
apt purge apache2* -y

# Install NGINX
apt install nginx -y

Buat konfigurasi host baru khusus untuk Umami:

nano /etc/nginx/sites-available/gowa

Kemudian tempelkan konfigurasi berikut:

# https://natvps.id/umami-nat-vps
# Reference: https://umami.is/docs/guides/running-on-digitalocean#proxying-with-nginx

server {
  listen 80;
  server_name analytics.tutorial.mdinata.my.id;

  location / {
    proxy_pass http://localhost:3000;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

Sesuaikan analytics.tutorial.mdinata.my.id dengan domain Anda.

Aktifkan konfigurasi tersebut dengan:

ln -sf /etc/nginx/sites-available/umami /etc/nginx/sites-enabled/umami

# Restart NGINX
systemctl restart nginx

Generate Sertifikat SSL (Let’s Encrypt)

Agar domain kita dapat diakses melalui HTTPS, kita perlu membuat sertifikat SSL. Kita dapat menggunakan sertifikat SSL gratis dari Let’s Encrypt melalui Certbot.

Install Certbot dan plugin NGINX nya menggunakan perintah:

apt install python3-certbot python3-certbot-nginx

Lalu, generate sertifikat melalui Certbot dengan perintah

certbot --nginx -d analytics.tutorial.mdinata.my.id

Ganti analytics.tutorial.mdinata.my.id dengan domain Anda.

Selamat! Domain Anda saat ini dapat diakses melalui koneksi aman HTTPS.

Mengakses Dashboard Umami

Umami dapat diakses melalui domain Anda sebelumnya. Contoh: https://analytics.tutorial.mdinata.my.id.

Untuk login pertama kali, gunakan username admin dan password umami.

Menambahkan Website untuk Analytics

Untuk menambahkan website untuk di-tracking, masuk ke tab Settings -> Add website.

\

  • Name: Nama website
  • Domain: Domain website yang ingin di-tracking

Untuk melihat kode tracking, masuk ke menu Edit.

Pada tab Tracking code, terdapat kode HTML untuk memasukkan tracker Umami ke website. Pada website yang ingin di-tracking-, masukkan tracking code tersebut pada tag <head>.

Penutup

Demikianlah artikel ini mengenai langkah-langkah install Umami di NAT VPS. Jika bingung atau ragu, jangan sungkan untuk bertanya di grup Telegram @IPv6Indonesia. Terima kasih!

You May Also Like

About the Author: Hendra Manudinata