Cài đặt Plausible – Analytics self host thay thế Google Analytics

Plausible là 1 dịch vụ analytics tương tự Umami mà mình từng giới thiệu, giúp bạn dễ dàng thu thập, phân tích các dữ liệu về traffic, nguồn traffic, các dữ liệu nhân khẩu học, hành vi của khách, trong khi vẫn duy trì quyền riêng tư và quyền sở hữu dữ liệu của khách truy cập (tuân thủ GDPR)

Tính năng của nó theo mình là hơi thiếu khi nó thậm chí không có tùy chọn nhìn xem khách truy cập đang dùng màn hình độ phân giải nào?

Bù lại giao diện của nó, khá phù hợp với màn hình 4k 😀 có thể nhìn toàn bộ các thông số ở trong 1 màn hình, không phải kéo chuột lên xuống gì hết, phần lớn quản lý qua các tab nhỏ ở cùng trên 1 trang

Điểm thứ 2 là theo mình khá hay, khi Plausible tích hợp được cả các từ khóa và data cũ từ Google Analytics vào luôn, nôm na dễ hiểu thì nếu bạn đang dùng Google Analytics, chuyển giao sang Plausible khá là thuận tiện

2023 10 19 7 46 23

Về khoản chạy nhẹ, nhanh thì không có gì phàn nàn về Plausible rồi, file toàn nhí nhí 1-2kb 😀

Điểm cuối cùng dù Plausible là 1 dịch vụ trả phí, nhưng họ có share code trên github để mọi người có thể tự cài đặt, sử dụng cá nhân, tất nhiên các bản public này, thường sẽ thiếu tính năng 1 chút so với phiên bản cloud họ đang bán, rất dễ hiểu

Cài đặt khá cơ bản, có điều nếu tích hợp data Google Analytics và Google Search Console integration vào thì dài như tờ sớ, y chang khi cài đặt thèng Alist luôn

Bài này mình chỉ viết phần cài đặt Plausible, muốn tích hợp Google vào thì mọi người làm theo hướng dẫn của tác giả viết sẵn là được

Để mọi thứ đơn giản, thông dụng, thì mình tạo mới 1 con VPS Oracle miễn phí, dùng OS Ubuntu

Cấu hình VPS

Nếu bạn dùng VPS hãng khác, đã cài docker, docker-compose thì không cần làm bước này

# update OS
sudo apt update && sudo apt upgrade -y

# set locale
locale-gen en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8

# Tắt Firewall
sudo apt remove iptables-persistent -y
sudo ufw disable
sudo iptables -F

# Chỉnh về múi giờ Việt Nam
timedatectl set-timezone Asia/Ho_Chi_Minh

# Tạo swap 4GB RAM
sudo fallocate -l 4G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile && echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
cat <<EOF > /etc/sysctl.d/99-xs-swappiness.conf
vm.swappiness=10
EOF

# Enable TCP BBR congestion control
cat <<EOF > /etc/sysctl.conf
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
EOF

# Cài đặt docker
curl -sSL https://get.docker.com | sh
sudo usermod -aG docker $(whoami)
sudo systemctl start docker
sudo systemctl enable docker
apt install docker-compose -y

# bypass Oralce
sudo wget --no-check-certificate https://raw.githubusercontent.com/bibicadotnet/NeverIdle-Oracle/master/VM.Standard.E2.1.Micro.sh -O /usr/local/bin/bypass_oracle.sh
chmod +x /usr/local/bin/bypass_oracle.sh
nohup /usr/local/bin/bypass_oracle.sh >> ./out 2>&1 <&- &
crontab -l > bypass_oracle
echo "@reboot nohup /usr/local/bin/bypass_oracle.sh >> ./out 2>&1 <&- &" >> bypass_oracle
crontab bypass_oracle

Các bước râu ria ở trên VPS nào mình cũng làm, bao gồm cập nhập Ubuntu, tắt firewall, tạo 4G RAM ảo, bật BBR, cài đặt docker, docker-compose và bypass oracle …

Cài đặt Plausible

  • Tải xuống the plausible hosting repo
git clone https://github.com/plausible/hosting
cd hosting
  • Tiếp theo
nano plausible-conf.env

Bên trong sẽ thấy 2 giá trị BASE_URLSECRET_KEY_BASE

  • SECRET_KEY_BASE thì có thể chạy lệnh bên dưới để tạo 1 khóa random rồi điền vào
openssl rand -base64 64 | tr -d '\n' ; echo

BASE_URL thì nên dùng 1 subdomain dễ nhớ dạng analytics.bibica.net

Cấu trúc cụ thể có thể xem bên dưới, sửa lại cho phù hợp với bạn

BASE_URL=https://analytics.bibica.net:443
SECRET_KEY_BASE=APSHo0LUca6DuR1SZboMuktb3wgedCy4xEuPJIs1MThJ385CNBhVmY1FdvI6XZ/WMzCX/hVovzpOe9r8dmMPIA==

Ctrl+O -> Enter -> Ctrl+X để save và exit.

  • Tiếp theo chạy lệnh bên dưới để hoàn thành cài đặt
docker-compose up -d --build --remove-orphans --force-recreate

Thời gian cài đặt khá lâu, tới cả phút, chưa rõ Plausible cài gì mà quá xá luôn 😀

Cấu Hình Cloudflare Tunnels

Tạo tài khoản Cloudflare Zero Trust ->Access -> Tunnel -> Create a tunnel -> đặt 1 tên cho dễ nhớ (analytics.bibica.net) -> Install and run a connector

2023 10 19 7 17 12

Sau đó tạo Public hostnames, analytics.bibica.net tới IP:8000

  • Lúc này có thể truy cập vào subdomain analytics.bibica.net để tạo tài khoản admin cho Plausible

2023 10 19 7 30 46

  • Add domain muốn theo dõi

2023 10 19 7 31 32

  • Chép đoạn code Plausible tạo ra, có thể bỏ vào thẻ <head> tương tự các analytics khác

2023 10 19 7 32 59

  • Có thể mở trang public để có xem cho tiện, đỡ mất công log vào tài khoản quản trị

2023 10 19 7 48 47

Sau khi làm xong, trang analytics của bạn, cơ bản nó sẽ như bên dưới 😛

2023 10 19 8 57 54

Tương tự Umami, Plausible cũng không có tính năng chặn track của admin (hoặc tác giả để chỗ nào đó mình không thấy) nên quản trị vào cũng bị tính luôn 😀 có thể xử lý thủ công bằng cách chặn file analytics (script.js) bằng các addon như như AdGuard

Tạm thì sau khi dùng cả Umami và Plausible thì mình thấy thèng nào cũng ổn, rất nhẹ, dù mình chỉ cài trên VPS Oracle miễn phí, cấu hình rất yếu nhưng bên trong quản trị chạy mượt 😀 bạn nào rảnh có thể vào analytics public của thèng bibica.net xem thử 😛

Vấn đề sự riêng tư hay tuân thủ GDPR này nọ, trừ vài quốc gia ở châu Âu mình thấy bắt buộc phải làm, còn lại mình thấy phần lớn chẳng ai thèm quan tâm 😀 thực tế bạn vẫn dùng Gmail, vẫn dùng Google Search thì không có khái niệm riêng tư gì nữa cả

Góc độ người dùng cuối, cá nhân nếu mình thấy trang nào chịu bỏ tới $10/1 tháng, chỉ để dùng các dịch vụ dạng Analytics tuân thủ GDPR, thường mình cũng khá có thiện cảm 😀 tại tay đấy giàu vcl 😀

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback.
Notes: However, those deemed to be spam or solely promotional will be deleted.

You can create a Gravatar account, add avatar, then use that email to comment here, your account will have a more beautiful Avatar, easier to recognize with other members.

Please use real emails, you can receive notifications when comments are replied