ما هو Docker؟
Docker أداة تغلّف تطبيقك مع كل ما يحتاجه (الكود، المكتبات، الإعدادات) في حاوية (Container) تعمل بنفس الطريقة على أي جهاز.
يحلّ مشكلة "لكنه يعمل على جهازي!" — الحاوية تعمل بنفس الشكل في كل مكان.
لماذا Docker؟
- التناسق: نفس البيئة على جهازك وعلى الخادم.
- العزل: كل تطبيق في حاويته الخاصة دون تعارض.
- السرعة: شغّل تطبيقًا كاملًا بأمر واحد.
أين يُستخدم Docker؟
- نشر التطبيقات: تغليف الخدمة لتعمل على أي خادم.
- بيئات التطوير: توحيد بيئة الفريق كله بأمر واحد.
- الأنظمة الموزّعة (Microservices): كل خدمة في حاويتها.
مفاهيم أساسية
| المصطلح | المعنى |
|---|---|
| Image | قالب جاهز للقراءة فقط (وصفة التطبيق) |
| Container | نسخة حيّة تعمل من الـ Image |
| Dockerfile | ملف تعليمات لبناء الـ Image |
| Docker Hub | مكتبة Images جاهزة على الإنترنت |
الـ Image كالـ "class"، والـ Container كالـ "object" منه.
أول حاوية
بعد تثبيت Docker Desktop:
docker run hello-world
سيحمّل Docker صورة تجريبية ويشغّلها — تهانينا، شغّلت أول حاوية!
docker --version
أوامر يومية
docker ps # الحاويات العاملة الآن
docker images # الصور المتوفّرة
docker stop <id> # إيقاف حاوية
أسئلة شائعة
ما الفرق بين Docker والآلة الافتراضية (VM)؟ الآلة الافتراضية تحاكي نظام تشغيل كاملًا (ثقيلة)، بينما حاوية Docker تشارك نواة النظام (خفيفة وأسرع بكثير).
هل أحتاج Docker كمبتدئ؟ ليس في البداية، لكنه مهارة مهمّة عند الانتقال إلى نشر التطبيقات والعمل ضمن فرق.
🎯 التالي: الصور والحاويات بالتفصيل.