الدرس 20: إدارة دورة حياة Compose (Stop, Down, Restart)
من الضروري معرفة كيفية إيقاف تشغيل مكدسك وتنظيفه بأمان.
1. إيقاف الخدمات
استخدم docker compose stop لإيقاف الحاويات بأمان دون إزالتها. يمكن إعادة تشغيلها لاحقاً بسرعة كبيرة.
bash docker compose stop
لإعادة تشغيل الخدمات المتوقفة:
bash docker compose start
2. إزالة المكدس (docker compose down)
يوقف الأمر down الحاويات ويزيل الحاويات والشبكات الافتراضية التي أنشأها compose up.
bash docker compose down
تنظيف كل شيء (بما في ذلك المجلدات)
الأهم من ذلك، أن down لا يزيل المجلدات الدائمة افتراضياً، لأن ذلك سيؤدي إلى حذف بياناتك (على سبيل المثال، بيانات PostgreSQL).
لإزالة الحاويات والشبكات و أيضاً المجلدات المسماة (استخدم بحذر):
bash docker compose down -v
3. إعادة بناء الصور
إذا قمت بتغيير كود تطبيقك أو تعديل Dockerfile، فأنت بحاجة إلى إعادة بناء الصورة قبل أن تستخدم الحاويات الإصدار الجديد.
لإيقاف وإعادة بناء وإعادة تشغيل المكدس:
bash docker compose up --build -d
4. تنفيذ الأوامر داخل خدمة قيد التشغيل
لتشغيل أمر تفاعلي (مثل صدفة أو سكريبت ترحيل) داخل حاوية قيد التشغيل، استخدم docker compose exec:
bash
افتح صدفة داخل حاوية الويب قيد التشغيل
docker compose exec web sh
تشغيل سكريبت ترحيل قاعدة بيانات
docker compose exec db psql -U user -d mydb
docker compose exec مكافئ لـ docker exec ولكنه يستخدم اسم الخدمة المحدد في compose.yml الخاص بك.