DevOps

ما هو Docker: شرح الحاويات وكيف تعمل في 2026

✍️ ابراهيم المطر 📅 ٢٦ ديسمبر ٢٠٢٥ ⏱️ 5 دقائق

ما هي الحاويات (Containers) وكيف تبدأ بتعلمها: دليل شامل للمبتدئين

رسم توضيحي لحاوية Docker مع شعارات التقنيات المختلفة

مقدمة

في عالم تطوير البرمجيات الحديث، أصبحت الحاويات (Containers) من أهم التقنيات التي يجب على كل مطور ومهندس برمجيات إتقانها. إذا كنت تتساءل عن ماهية الحاويات وكيف يمكنك البدء في تعلمها، فأنت في المكان الصحيح. في هذا المقال، سنستكشف معًا كل ما تحتاج معرفته عن الحاويات وأفضل الممارسات للبدء في استخدامها.

ما هي الحاويات (Containers)؟

الحاويات هي وحدات برمجية قياسية تحزم الكود البرمجي وجميع متطلباته في حزمة واحدة، مما يضمن تشغيل التطبيق بشكل سريع وموثوق عبر بيئات حوسبة مختلفة.

تخيل الحاوية كصندوق معزول يحتوي على تطبيقك وكل ما يحتاجه للعمل: المكتبات، الأدوات، التكوينات، وملفات النظام.

مقارنة بين Virtual Machines و Containers

على عكس الأجهزة الافتراضية (Virtual Machines) التي تتطلب نظام تشغيل كامل لكل نسخة، تشارك الحاويات نواة نظام التشغيل المضيف، مما يجعلها أخف وزنًا وأسرع في التشغيل.

لماذا تحتاج إلى تعلم الحاويات؟

المزايا الرئيسية للحاويات:

  • القابلية للنقل (Portability): يعمل التطبيق بنفس الطريقة على أي نظام.
  • الكفاءة (Efficiency): خفيفة الوزن وتبدأ خلال ثوانٍ.
  • العزل (Isolation): منع تعارض التبعيات وتحسين الأمان.
  • قابلية التوسع (Scalability): إنشاء نسخ متعددة بسهولة.

أفضل الممارسات للبدء في تعلم الحاويات

1. ابدأ بفهم أساسيات Docker

  • Image: قالب للقراءة فقط
  • Container: نسخة قابلة للتشغيل من الصورة
  • Dockerfile: تعليمات بناء الصورة
  • Docker Hub: مستودع الصور الجاهزة

2. خطة تعلم منهجية

  1. المرحلة الأولى (الأساسيات): تثبيت Docker، الأوامر الأساسية، تشغيل أول حاوية.
  2. المرحلة الثانية (البناء): Dockerfile، الطبقات، Docker Compose.
  3. المرحلة الثالثة (المتقدم): الشبكات، Volumes، الأمان، الإنتاج.

3. الممارسة العملية

  • حاوية لتطبيق ويب بسيط
  • قاعدة بيانات محتواة
  • تطبيق متعدد الحاويات باستخدام Docker Compose

كيفية إعداد Docker على جهازك

التثبيت على أنظمة Linux


sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

sudo docker run hello-world
تشغيل docker run hello-world

التثبيت على Windows و macOS

قم بتنزيل Docker Desktop من الموقع الرسمي واتبع معالج التثبيت.


docker --version
docker run hello-world

مثال عملي: إنشاء أول حاوية لك


docker run -d -p 8080:80 --name my-nginx nginx
docker ps

قم بزيارة: http://localhost:8080

واجهة Nginx الافتراضية

إنشاء Dockerfile مخصص


FROM nginx:alpine
COPY ./html /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

docker build -t my-custom-nginx .
docker run -d -p 8080:80 my-custom-nginx

الخلاصة

الحاويات ليست مجرد تقنية عابرة، بل هي أساس البنية التحتية الحديثة للتطبيقات. ابدأ اليوم، وجرّب، وتعلم من الأخطاء.

الموارد الإضافية

Docker ComposeDockerfileDevOpsContainersتعلم DockerDockerالحاويات