تقييم Docker Compose
يحزم نشر Docker Compose العام لوحة VM المستضافة ذاتيا لمضيف KVM واحد. يبني من مصدر محلي، ويركب موارد الافتراضية على المضيف، ويعرض الواجهة على المنفذ 80.
التشغيل والفحص
من cto-gui:
docker compose -f docker-compose.self-hosted.yml up --build -d
docker compose -f docker-compose.self-hosted.yml ps
docker compose -f docker-compose.self-hosted.yml logs --tail=200 backend frontendيجب أن تكون كلتا الخدمتين قيد التشغيل. يجب أن تتصل الخلفية بـ qemu:///system؛
حاوية سليمة لا تصل إلى libvirt ليست نشرا قابلا للاستخدام.
ما يفعله Compose
- يبني الخلفية من
../cto-gui-libvirt-backend؛ - يبني الواجهة من
cto-gui/Dockerfile.frontendمع تفعيل وضع الواجهة المستضافة ذاتيا؛ - يمرّر
/dev/kvmومقبس libvirt إلى حاوية خلفية ذات امتيازات؛ - يركب
/var/lib/libvirt/imagesللقراءة والكتابة؛ - يركب دلائل ISO المصدر والصور الذهبية المرقاة للقراءة فقط؛
- يخزّن بيانات الخلفية في المجلد المسمى
cto-data؛ - يعيد تشغيل الخدمتين ما لم تُوقَفا صراحة.
ما لا يفعله Compose
لا يضبط TLS ولا مزود هوية إنتاجيا ولا توفرا عاليا ولا قاعدة بيانات خارجية ولا
نسخا احتياطيا خارج المضيف ولا مدير أسرار ولا شحن سجلات ولا تحديثات آلية ولا
مجدول متعدد المضيف. restart: unless-stopped سياسة إعادة تشغيل الحاوية وليست
توفرا عاليا للخدمة.
تحديث تقييم
سجّل الالتزام الحالي واجرد الضيوف قيد التشغيل قبل إعادة البناء:
git rev-parse HEAD
docker compose -f docker-compose.self-hosted.yml ps
virsh -c qemu:///system list --all
docker compose -f docker-compose.self-hosted.yml build --pull
docker compose -f docker-compose.self-hosted.yml up -dبعد ذلك، كرر فحوصات الوضع وإطلاق ISO وVNC والإيقاف والحذف وإعادة التشغيل. لا يعد المستودع بترقية Compose بلا توقف.
الإيقاف دون محو الحالة
docker compose -f docker-compose.self-hosted.yml downتجنب --volumes أثناء الإيقاف أو الترقية الروتينية. يحتوي المجلد المسمى حالة
اختبار دائمة وسجلات تنظيف تُستخدم بعد إعادة التشغيل.