EQVPS

VPS สำหรับ Plausible: สถิติเว็บที่ไม่ใช้คุกกี้

โฮสต์ Plausible Community Edition เองเพื่อสถิติเว็บที่เคารพความเป็นส่วนตัวโดยไม่ใช้คุกกี้ ความต้องการของระบบ การตั้งค่า Docker พร้อม HTTPS และสิ่งที่ ClickHouse ต้องการ

การติดตั้ง analytics แบบทั่วไปจะขอความยินยอมจากผู้เข้าชม ส่งข้อมูลของพวกเขาไปให้บุคคลที่สาม แล้วให้แดชบอร์ดที่มีรายงานสองร้อยฉบับที่คุณไม่มีวันเปิด Plausible ทำตรงกันข้าม: สคริปต์เล็ก ๆ หนึ่งตัว ไม่มีคุกกี้ และสถิติหน้าเดียวที่คุณอ่านได้จริง Community Edition ให้โฮสต์เองได้ฟรี และสิ่งที่ต้องการมีเพียง VPS ที่มี IP ของตัวเอง

ทำไมต้องโฮสต์เอง

  • ข้อมูลอยู่บนเซิร์ฟเวอร์ของคุณ ไม่มีบุคคลที่สามเก็บการดูหน้าเว็บของผู้เข้าชม
  • ไม่มีคุกกี้ Plausible นับผู้เข้าชมที่ไม่ซ้ำด้วยแฮชที่เปลี่ยนทุกวันและไม่เคยเก็บ IP เต็ม ซึ่งมักทำให้คุณเลิกใช้แบนเนอร์คุกกี้ได้
  • สคริปต์จิ๋ว ตัวติดตามมีขนาดไม่ถึง 1 KB จึงไม่โผล่ในรายงานความเร็วหน้าเว็บ
  • ค่าใช้จ่ายคงที่ ไม่มีการคิดราคาต่อการดูหน้า ทราฟฟิกพุ่งก็ไม่เสียเพิ่ม

สิ่งที่ต้องใช้

Plausible รันเป็นสามคอนเทนเนอร์: ตัวแอป, PostgreSQL สำหรับบัญชีและการตั้งค่า และ ClickHouse สำหรับเหตุการณ์ ClickHouse คือตัวที่กินหน่วยความจำ

  • RAM 4 GB คือขนาดที่สบาย: Small-IP (4 vCPU, 4 GB, 35 GB, $16/เดือน) เริ่มทำงานได้ที่ 2 GB (Micro-IP) แต่การรวมข้อมูลเบื้องหลังทำให้หน่วยความจำพุ่ง จึงควรเพิ่ม swap หากเลือกแพ็กเกจเล็ก
  • IPv4 เฉพาะและโดเมน ตัวติดตามและแดชบอร์ดให้บริการจาก https://stats.example.com แพ็กเกจ NAT ไม่รับพอร์ต 443 ขาเข้า

การติดตั้ง (Ubuntu 24.04, Docker)

apt update && apt install -y docker.io docker-compose-v2 git
git clone https://github.com/plausible/community-edition plausible-ce
cd plausible-ce
# check out the newest release tag
git checkout "$(git tag --sort=-v:refname | head -1)"

สร้างไฟล์ environment โดย Plausible สามารถขอใบรับรอง Let's Encrypt ได้เอง:

cat > .env <<EOF
BASE_URL=https://stats.example.com
SECRET_KEY_BASE=$(openssl rand -base64 48)
HTTP_PORT=80
HTTPS_PORT=443
EOF

cat > compose.override.yml <<'EOF'
services:
  plausible:
    ports:
      - 80:80
      - 443:443
EOF

docker compose up -d

ชี้ A record ของ stats.example.com ไปยัง VPS ก่อน เพื่อให้การขอใบรับรองสำเร็จ จากนั้นเปิด URL สร้างบัญชี และเพิ่มเว็บไซต์ README ของที่เก็บคือแหล่งอ้างอิงหลักสำหรับตัวแปรใหม่ ควรอ่านผ่าน ๆ ทุกครั้งที่อัปเกรด

เพิ่มสคริปต์ลงในเว็บไซต์

<script defer data-domain="example.com" src="https://stats.example.com/js/script.js"></script>

ตัวบล็อกโฆษณาบางตัวบล็อกทุกอย่างที่ชื่อ “analytics” การให้บริการสคริปต์จากซับโดเมนของคุณเองช่วยเลี่ยงปัญหานี้ได้เกือบทั้งหมด

ดูแลให้ทำงานต่อเนื่อง

  • การสำรองข้อมูล สถิติของคุณอยู่ใน Docker volume สองตัว Managed Backups สำเนาทั้งเซิร์ฟเวอร์ทุกวัน ($2/เดือน ฟรีในแพ็กเกจรายปี) เพื่อความปลอดภัยเพิ่ม ให้ dump PostgreSQL ด้วย pg_dump จากคอนเทนเนอร์
  • การอัปเดต git pull สลับไปยังแท็กใหม่ แล้ว docker compose pull && docker compose up -d อ่านบันทึกการเปลี่ยนแปลงก่อนอัปเกรดเวอร์ชันหลัก
  • Swap บนเซิร์ฟเวอร์ 2 GB: ไฟล์ swap 2 GB ช่วยไม่ให้การรวมข้อมูลของ ClickHouse ถูกหยุดกลางคัน

จุดที่ยังขาด

Plausible ตั้งใจเก็บข้อมูลให้น้อยลง ไม่มีเส้นทางการใช้งานรายบุคคล ไม่มีการติดตามข้ามอุปกรณ์ ไม่มีการเชื่อมต่อกับแพลตฟอร์มโฆษณา หากงานการตลาดของคุณอยู่ในเครื่องมือของเครือข่ายโฆษณา คุณจะคิดถึงรายงานเหล่านั้น แต่สำหรับเว็บส่วนใหญ่ที่แค่อยากรู้ว่าหน้าไหนได้ผลและผู้เข้าชมมาจากไหน นี่คือปริมาณข้อมูลที่พอดี และไม่มีใครต้องกด “ยอมรับ”

ที่เกี่ยวข้อง

พร้อม deploy แล้วหรือยัง? จ่ายด้วยคริปโต ไม่ต้อง KYC — ใช้งานได้ในราวหนึ่งนาที

Deploy เลย →

FAQ

Plausible ต้องมีแบนเนอร์คุกกี้ไหม?

Plausible ไม่ตั้งคุกกี้และไม่เก็บข้อมูลส่วนบุคคลหรือที่อยู่ IP เต็ม: ผู้เข้าชมถูกนับด้วยแฮชที่เปลี่ยนทุกวัน ในกรณีส่วนใหญ่จึงไม่จำเป็นต้องมีแบนเนอร์ขอความยินยอม แต่การตัดสินใจสุดท้ายขึ้นอยู่กับกฎหมายในพื้นที่ของคุณและสิ่งอื่นที่เว็บไซต์โหลด

Plausible แบบโฮสต์เองต้องใช้ RAM เท่าไร?

Plausible เก็บเหตุการณ์ไว้ใน ClickHouse และ ClickHouse คือส่วนที่ต้องการหน่วยความจำ มันเริ่มทำงานได้ที่ 2 GB แต่การรวมข้อมูลเบื้องหลังอาจพุ่งเกินนั้น 4 GB (Small-IP) คือขนาดที่สบายสำหรับเว็บไม่กี่เว็บที่มีทราฟฟิกสม่ำเสมอ

รันบนแพ็กเกจ NAT ได้ไหม?

ไม่ได้ สคริปต์ติดตามและแดชบอร์ดให้บริการผ่าน HTTPS บนโดเมนของคุณเอง เซิร์ฟเวอร์จึงต้องรับพอร์ต 443 ขาเข้า ซึ่งต้องใช้แพ็กเกจที่มี IP เฉพาะ

ข้อมูลใช้พื้นที่ดิสก์เท่าไร?

น้อยมากต่อเหตุการณ์ เพราะ ClickHouse บีบอัดได้ดี เว็บที่มีผู้เข้าชมหลายหมื่นครั้งต่อเดือนใช้พื้นที่ไม่ถึงหนึ่งกิกะไบต์ต่อปี เป็นเวลานานที่ image ของ Docker กินพื้นที่มากกว่าข้อมูลเสียอีก

จะอัปเดตอย่างไร?

ดึงรีลีสใหม่ในที่เก็บ community edition แล้วรัน 'docker compose pull' และ 'docker compose up -d' อ่านบันทึกการเปลี่ยนแปลงก่อน เพราะเวอร์ชันหลักบางครั้งต้องมีขั้นตอนย้ายข้อมูล

ความคิดเห็น

ยังไม่มีความคิดเห็น เป็นคนแรกสิ

แสดงความคิดเห็น

ความคิดเห็นจะถูกตรวจสอบก่อนแสดง