دليل النشر

استضافة Dozzle على VPS: عارض سجلّات Docker لحظياً

انشر على VPS Cloud →

الاستضافة الذاتية4 دقيقة قراءة

استضافة Dozzle على VPS: عارض سجلّات Docker لحظياً

كل مطوّر مرّ بهذا: يتعطّل شيء ما في الإنتاج، فتتصل بالخادم عبر SSH، وتجد اسم الحاوية الصحيح، وتشغّل `docker logs -f` — لتتصفّح آلاف الأسطر محاولاً رصد الخطأ. يلغي Dozzle (رخصة MIT، نحو 12k نجمة) سير العمل هذا. إنه ثنائي Go خفيف يتصل بمقبس Docker بوضع القراءة فقط ويبثّ سجلّات كل حاوية إلى واجهة متصفح أنيقة مع بحث حيّ. إليك كيفية نشره على خادم VPS في دقائق.

لماذا عارض سجلّات Docker قائم على المتصفح

سير عمل Docker CLI المعياري — docker ps، ثم docker logs -f <container> — مناسب لحاوية واحدة على خادم واحد. لكنه ينهار في اللحظة التي تشغّل فيها عدة حاويات، أو تحتاج إلى ربط السجلّات عبر الخدمات، أو تريد منح زميل رؤية بوضع القراءة فقط دون مفتاح SSH. يحلّ Dozzle هذه الثلاث جميعاً: علامة تبويب واحدة في المتصفح تُظهر كل حاوية على المضيف، تنقر لتتابع أياً منها، ويرشّح البحث في الزمن الحقيقي البثّ دون مغادرة الصفحة. ولأن Dozzle يقرأ مقبس Docker فقط ولا يكتب أبداً على القرص، فليس هناك ما يُصان، ولا قاعدة بيانات للنسخ الاحتياطي، ولا تكلفة تخزين.

ما الذي يمنحك إياه Dozzle

  • بثّ السجلّات الحيّ عبر WebSocket — دون استقصاء، ودون تأخير، ومتابعة فورية لأي حاوية.
  • بحث بالنص الكامل وترشيح بالتعابير النمطية مباشرة في بثّ السجلّات، لكل حاوية.
  • عرض مقسّم متعدّد الحاويات — ثبّت عدة حاويات جنباً إلى جنب لربط الأحداث في الزمن الحقيقي.
  • وصول إلى مقبس Docker بوضع القراءة فقط — لا يستطيع Dozzle تشغيل أي حاوية أو إيقافها أو تعديلها.
  • أقل من 10 MB من الذاكرة في وضع الخمول — عبء ضئيل، آمن للإضافة إلى أي خادم VPS جارٍ.
  • وضع وكيل اختياري متعدّد المضيفات — محور Dozzle واحد يجمّع السجلّات من عدة مضيفات Docker.
  • دعم مدمج للمصادقة الأساسية وOIDC لتقييد الوصول على المستخدمين المصرّح لهم.

المتطلبات

خادم VPS بنظام Ubuntu 22.04 (أو Debian 12) مع تثبيت Docker مسبقاً. يحتاج Dozzle إلى أقل من 10 MB من الذاكرة ولا يحتاج إلى أي مساحة قرص — فهو عديم الحالة تماماً. لا يلزم اسم نطاق بشكل صارم: يمكن الوصول إلى Dozzle على المنفذ 8080 عبر عنوان IP الخاص بخادمك. إذا أردت HTTPS ونطاقاً فرعياً مخصّصاً (logs.yourdomain.com)، فضَع وكيلاً عكسياً Caddy أو Nginx أمامه.

انشر Dozzle على خادم VPS الخاص بك

01

اسحب Dozzle وشغّله

اتصل عبر SSH وشغّل أمر Docker واحداً: docker run -d --restart=always -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock:ro --name dozzle amir20/dozzle:latest. تُحمّل الراية :ro المقبس بوضع القراءة فقط — يستطيع Dozzle قراءة السجلّات فحسب، لا التحكم في الحاويات. حجم الصورة نحو 20 MB عند السحب الأول. يبدأ Dozzle فوراً دون أي تهيئة أولية.

02

افتح وحدة تحكم السجلّات

انتقل إلى http://<your-server-ip>:8080. يُدرج الشريط الجانبي الأيسر كل حاوية قيد التشغيل بالاسم. انقر أي حاوية لبدء متابعة سجلّاتها حيّاً. استخدم شريط البحث في الأعلى للترشيح بكلمة مفتاحية أو الصِق تعبيراً نمطياً للترشيح المتقدم.

03

فعّل المصادقة

افتراضياً، يكون Dozzle مفتوحاً لأي شخص يستطيع الوصول إلى المنفذ 8080. أضِف المصادقة الأساسية بتمرير متغيّرات البيئة: --env DOZZLE_USERNAME=admin --env DOZZLE_PASSWORD=<strong-password>. لعمليات النشر ضمن فريق، هيّئ OIDC بإنشاء ملف تهيئة dozzle.yml وتحميله عند /data/config.yaml داخل الحاوية. كحدّ أدنى، قيّد المنفذ 8080 على عنوان IP الخاص بك: ufw allow from <your-ip> to any port 8080.

04

اختياري: HTTPS عبر Caddy

لتقديم Dozzle عبر HTTPS عند logs.yourdomain.com، ثبّت Caddy (apt install caddy) وأنشئ /etc/caddy/Caddyfile بالمحتوى: logs.yourdomain.com { reverse_proxy localhost:8080 }. شغّل systemctl reload caddy ويُصدِر Caddy تلقائياً شهادة Let's Encrypt. وجّه سجل DNS من نوع A لـ logs.yourdomain.com إلى عنوان IP الخاص بخادم VPS أولاً.

05

اختياري: وكلاء متعدّدو المضيفات

لمراقبة الحاويات على عدة خوادم، شغّل Dozzle في وضع الوكيل على كل مضيف بعيد: docker run -d --restart=always -p 7007:7007 -v /var/run/docker.sock:/var/run/docker.sock:ro --name dozzle-agent amir20/dozzle:latest agent. على نسخة Dozzle الرئيسية، أضِف --env DOZZLE_REMOTE_AGENT=<agent-ip>:7007 لكل مضيف بعيد. تظهر جميع المضيفات بعدها كعُقد منفصلة في الشريط الجانبي الأيسر.

06

أول تسجيل دخول

يفتح Dozzle مباشرةً على سجلات حاوياتكم، دون أي بيانات دخول. اعتبروا هذا العنوان سرياً واحموه قبل مشاركته.

اقرِن Dozzle بـ Beszel لرؤية كاملة للحاويات

يُظهر لك Dozzle *ما* الذي تطبعه الحاوية. ويُظهر Beszel *مقدار* ما تستهلكه من CPU وذاكرة وقرص، مع رسوم بيانية تاريخية وتنبيهات. انشر كليهما على خادم VPS نفسه — Dozzle لتصحيح السجلّات الحيّ، وBeszel لمراقبة اتجاهات الموارد — فتحصل على منظومة مراقبة كاملة ومُستضافة ذاتياً للحاويات بأقل من 60 MB من الذاكرة إجمالاً.

انشر Dozzle على خادم VPS الخاص بك بنقرة واحدة

توقّف عن الاتصال بالخوادم عبر SSH لمتابعة سجلّات الحاويات. يوفّر ServOrbit نسخة Dozzle جاهزة للاستخدام على خادم VPS — مقبس Docker موصول مسبقاً، ويمكن الوصول إليها من متصفحك في دقائق.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـ العربية والفرنسية والإنجليزية.