Umami: analytics مفتوح المصدر على سيرفرك من غير cookies
Umami بديل open source لـ Google Analytics تشغّله بـ Docker مع PostgreSQL. إزاي تسطّبه، إزاي تفعّل الـ MCP، وإيه اللي لازم تغيّره قبل ما ترفعه على سيرفر.
عايز تعرف مين بيزور موقعك ومنين، وأنهي صفحة شغالة وأنهي حملة جابت ناس، من غير cookie banner ومن غير ما تبعت داتا الزوار لشركة تانية؟ ده بالظبط اللي Umami معمول عشانه.
Umami إيه؟
Umami منصة analytics مفتوحة المصدر برخصة MIT. المشروع بيوصف نفسه في الـ README كده: منصة privacy-first بتجمع الـ traffic والـ campaigns وسلوك المستخدم والـ conversions والـ revenue في مكان واحد، من غير cookies ومن غير تتبع (no surveillance)، وتقدر تشغّلها self-hosted على سيرفرك أو تستخدم الـ cloud بتاعهم.
يعني ببساطة بديل لأدوات زي Google Analytics، بس الداتا عندك إنت.
آخر إصدار وقت كتابة المقال v3.4.1 (نازل 23 أكتوبر 2026)، والـ repo شغال ومش archived.
التشغيل بـ Docker (الأسهل)
الـ repo فيه ملف docker compose رسمي بيشغّل Umami مع قاعدة بيانات PostgreSQL. الجزء المهم منه:
umami:
image: ghcr.io/umami-software/umami:latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
APP_SECRET: replace-me-with-a-random-string
db:
image: postgres:15-alpine
وبعدها:
docker compose up -d
وهيفتح على http://localhost:3000. ولما تحب تحدّث:
docker compose pull
docker compose up --force-recreate -d
التشغيل من السورس
لو مش عايز Docker، المتطلبات حسب الـ README:
- Node.js نسخة 18.18+
- PostgreSQL نسخة 12.14+
git clone <https://github.com/umami-software/umami.git>
cd umami
pnpm install
اعمل ملف .env فيه DATABASE_URL بالشكل ده:
DATABASE_URL=postgresql://username:mypassword@localhost:5432/mydb
وبعدها pnpm run build ثم pnpm run start. خطوة الـ build بتعمل الجداول في قاعدة البيانات أول مرة.
الـ MCP: وصّل الـ AI assistant بالإحصائيات
حاجة لطيفة لو بتشتغل مع AI agents: Umami فيه /mcp endpoint، بس مقفول افتراضيًا. تفعّله بـ MCP_ENABLED=1، وتعمل authentication بـ API key من Settings ثم API keys. كده تقدر توصّل الـ assistant بتاعك بأرقام موقعك بدل ما تفتح الداشبورد وتنقل الأرقام بإيدك.
خلي بالك من الحاجات دي
- الـ login الافتراضي: أول تسطيب بيعمل user اسمه
adminوباسوردumami. غيّره فورًا. - الأسرار اللي في ملف الـ compose:
APP_SECRETوباسورد قاعدة البيانات في الملف الرسمي قيم مثال. غيّرهم قبل ما ترفع على أي سيرفر. - الـ MCP: لو فعّلته، اعمل API key مخصوص ليه بس عشان تقدر تلغيه لوحده.
- الـ 2FA: لو عايز two-factor authentication لازم تضبط
TWO_FACTOR_ENCRYPTION_KEY(64 حرف hex، تقدر تولّده بـopenssl rand -hex 32)، من غيره الميزة مش هتشتغل.
رأيي
لو عندك موقع شخصي أو SaaS صغير ومحتاج أرقام واضحة من غير تعقيد، Umami من أخف وأوضح الاختيارات: container واحد وقاعدة PostgreSQL وخلاص. الداتا عندك، ومفيش cookies تزعّج بيها الزوار. اللي هتدفعه في المقابل إنك مسؤول عن السيرفر والـ backups والتحديثات، فلو ده مش في دماغك الـ cloud بتاعهم موجود.
وإنت، بتستخدم إيه لإحصائيات موقعك؟ Google Analytics ولا حاجة self-hosted؟
المصادر
- Umami على GitHub (README: Installing from Source، Installing with Docker): https://github.com/umami-software/umami
- ملف docker-compose.yml الرسمي: https://github.com/umami-software/umami/blob/master/docker-compose.yml
- Umami releases: v3.4.1: https://github.com/umami-software/umami/releases/tag/v3.4.1
- توثيق Umami: https://umami.is/docs
- Open Source
- Self-Hosted
- Analytics
- Privacy
- Docker
- PostgreSQL