تخطي إلى المحتوى الرئيسي

VPS: تثبيت Docker

تم إنشاء هذا الدليل باستخدام المنتجات التالية:

(قد تختلف التفاصيل مع المنتجات من مزودين مختلفين ولكن المفاهيم الرئيسية تظل كما هي)

مقدمة

Docker هو برنامج مفتوح المصدر وخفيف الوزن للتصوير الافتراضي يتيح تقديم الخدمات أو التطبيقات معزولة على نظام واحد. على عكس الأجهزة الافتراضية الحقيقية، لا يتم محاكاة أو استضافة نظام تشغيل إضافي، بل فقط بيئة تطبيق داخل نظام المضيف. هذا لا يوفر الموارد بشكل عام فحسب، بل يسبب أيضًا حملًا منخفضًا مقارنةً بالتصوير الافتراضي الكامل. في هذا الدليل، سنغطي عملية تثبيت Docker على سيرفرك.

التحضير

لبدء العمل، يجب عليك الاتصال بسيرفر Linux الخاص بك عبر SSH. يرجى مراجعة دليلنا الوصول الأولي (SSH) إذا كنت بحاجة للمساعدة في ذلك. طوال هذا الدليل، سنستخدم Ubuntu كتوزيعة Linux.

التثبيت

الآن بعد أن اتصلت بسيرفر Linux الخاص بك، يمكنك المتابعة مع طرق التثبيت. اختر من بين مستودعات Linux أدناه لعرض خطوات التثبيت ذات الصلة.

لبدء التثبيت، عليك إضافة حزمة Docker باستخدام apt وإعدادها. هذا سيسمح لك بتثبيت وتحديث Docker بسهولة من المستودع في المستقبل.

استخدم الأوامر التالية لإضافة مفتاح GPG الرسمي لـ Docker إلى قائمة المستودعات الخاصة بك.

sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

بعد إعداد هذه الخطوات، عليك إضافة المستودع إلى مصادر apt باستخدام الأمر التالي.

echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

الآن بعد أن أضفت مستودع Docker إلى مصادرك، شغّل أمر تحديث apt-get لجلب التغييرات.

sudo apt-get update

في هذه المرحلة، تكون قد أعددت مستودع Docker بنجاح. كخطوة أخيرة، عليك تثبيت حزم Docker. يمكنك تثبيت أحدث إصدار باستخدام الأمر التالي.

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

للتحقق من نجاح التثبيت، جرب تشغيل صورة hello-world باستخدام الأمر التالي.

sudo docker run hello-world

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

لقد قمت بتثبيت Docker بنجاح على سيرفر Linux الخاص بك.

إعداد ما بعد التثبيت

بعد تثبيت Docker على سيرفرك، يمكنك اختيار إجراء بعض الإعدادات الإضافية لإزالة الحاجة لاستخدام sudo عند تنفيذ أوامر Docker ولتشغيل Docker تلقائيًا عند إقلاع السيرفر.

إدارة Docker بدون Sudo

يمكنك إزالة الحاجة لإضافة sudo قبل جميع أوامر Docker بإنشاء مجموعة Docker جديدة وإضافة المستخدمين إليها. هذا يحسن الراحة، لكن كن حذرًا لأن هذا يمنح صلاحيات root غير مباشرة للمستخدم.

أنشئ مجموعة docker وأضف المستخدم الحالي إلى المجموعة باستخدام الأوامر التالية.

# إنشاء مجموعة Docker
sudo groupadd docker

# إضافة المستخدم الحالي إلى مجموعة Docker
sudo usermod -aG docker $USER

بعد ذلك، نوصي بإعادة تشغيل السيرفر لضمان إعادة تقييم عضوية المجموعة. بدلاً من ذلك، يمكنك استخدام الأمر newgrp docker للقيام بذلك.

الآن تحقق من إمكانية تشغيل أوامر Docker بدون صلاحيات sudo عبر تشغيل الأمر docker run hello-world مرة أخرى.

نصيحة

أحيانًا قد تتلقى خطأ بخصوص ملف إعداد إذا كنت قد شغلت الأمر سابقًا بصلاحيات sudo. لحل ذلك، استخدم ببساطة الأمر rmdir ~/.docker/ لحذف مجلد Docker، وسيتم إعادة إنشائه تلقائيًا عند استخدام الأمر التالي.

إذا تم تشغيل الأمر كما هو متوقع، فهذا يعني أنك أعددت Docker بنجاح ليعمل بدون الحاجة لصلاحيات sudo.

تشغيل Docker عند الإقلاع

يمكنك إعداد Docker ليبدأ تلقائيًا عند إقلاع السيرفر باستخدام systemd الذي تستخدمه معظم توزيعات Linux.

نصيحة

في كل من Ubuntu و Debian، يتم إعداد Docker ليبدأ تلقائيًا عند الإقلاع بشكل افتراضي. إذا كنت تستخدم هاتين التوزيعتين، فلا حاجة لفعل أي شيء آخر.

يمكنك تمكين خدمة Docker لتعمل عند الإقلاع ببساطة عبر تشغيل الأوامر التالية.

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

وبالمثل، لتعطيل الخدمة عند الإقلاع استبدل enable بـ disable. يمكنك أيضًا إدارة الخدمة باستخدام مجموعة من أوامر systemctl الفرعية مثل:

sudo systemctl start [your_service]
sudo systemctl stop [your_service]
sudo systemctl restart [your_service]

الخاتمة

مبروك، لقد قمت بتثبيت وتكوين Docker بنجاح على سيرفر Linux الخاص بك! إذا كانت لديك أي أسئلة أو مشاكل أخرى، لا تتردد في التواصل مع فريق الدعم لدينا، المتوفر لمساعدتك يوميًا!