كيفية تثبيت واستخدام Docker على Ubuntu 20.04

دوكر هو منصة مفتوحة المصدر الأكثر شهرة بين المطورين ومسؤولي النظام لبناء وتشغيل ومشاركة التطبيقات باستخدام الحاويات. يصبح توزيع التطبيقات باستخدام الحاويات شائعًا لأن الحاويات مرنة وخفيفة الوزن وقابلة للنقل ومترابطة بشكل فضفاض وقابلة للتوسيع وأكثر أمانًا.

هذه المقالة نقطة بداية جيدة للمبتدئين لتعلم كيفية تثبيت واستخدام دوكر على نظام لينكس أوبونتو 20.04 باستخدام بعض الأوامر الأساسية. لهذا الدليل، سنقوم بتثبيت دوكر إصدار المجتمع (CE).

الشروط المسبقة:

تثبيت دوكر على أوبونتو 20.04

لاستخدام أحدث إصدار من دوكر، سنقوم بتثبيته من مستودع دوكر الرسمي. لذلك، ابدأ بإضافة مفتاح GPG لمستودع دوكر الرسمي إلى نظامك، بعد ذلك أضف تكوين المستودع إلى مصدر APT باستخدام الأوامر التالية.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

الآن قم بتحديث ذاكرة التخزين المؤقت لحزمة APT لتشمل حزم دوكر الجديدة في النظام باستخدام الأمر التالي.

$ sudo apt update

بعد ذلك، قم بتثبيت حزمة دوكر كما هو موضح.

$ sudo apt install docker-ce
Install Docker on Ubuntu

خلال عملية تثبيت حزمة دوكر، يقوم مثبت الحزمة بتشغيل systemd (المدير النظامي وخدمة المدير) لبدء تشغيل خدمة الدوكر تلقائيًا وتمكينها. استخدم الأوامر التالية للتحقق من أن خدمة الدوكر نشطة وممكّنة للبدء التلقائي عند بدء تشغيل النظام. تحقق أيضًا من حالتها:

$ sudo systemctl is-active docker
$ sudo systemctl is-enabled docker
$ sudo systemctl status docker
Check Docker Status

هناك عدة أوامر systemctl لإدارة والتحكم في خدمة دوكر وتشمل ما يلي:

$ sudo systemctl stop docker			#stop the docker service
$ sudo systemctl start docker			#start the docker service
$ sudo systemctl  restart docker		#restart the docker service

للتحقق من الإصدار المثبت من Docker CE على نظامك، قم بتشغيل الأمر التالي:

$ docker version
Check Docker Version

يمكنك عرض الأوامر المتاحة لاستخدام دوكر عن طريق تشغيل الأمر دوكر بدون أي خيارات أو وسيطات:

 
$ docker
List of Docker Commands

إدارة دوكر كمستخدم غير جذري باستخدام أمر sudo

بشكل افتراضي، يقوم مشغل دوكر بربط مأخذ UNIX (بدلاً من منفذ TCP) الذي يمتلكه المستخدم الجذر. لذلك، يعمل مشغل دوكر دائمًا كمستخدم جذري ولتشغيل أمر دوكر، تحتاج إلى استخدام sudo.

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

لتشغيل أمر دوكر بدون sudo، أضف جميع المستخدمين غير الجذريين الذين من المفترض أن يكونوا قادرين على الوصول إلى دوكر، إلى مجموعة docker على النحو التالي. في هذا المثال، يقوم الأمر بإضافة المستخدم المسجل حاليًا ($USER) أو اسم المستخدم إلى مجموعة دوكر:

$ sudo usermod -aG docker $USER
OR
$ sudo usermod -aG docker username

لتفعيل التغييرات في المجموعات، قم بتشغيل الأمر التالي:

$ newgrp docker 
$ groups
Add User to Docker Group

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

$ docker run hello-world
Verify Docker Installation

العمل مع صور Docker

A Docker image is a read-only template file with instructions for creating a Docker container. You can either create your custom images or you can only use those created by others and published in the Docker Hub, the world’s largest library and community for container images.

يمكنك البحث عن صورة centos في Docker Hub باستخدام الأمر التالي:

$ docker search centos 
Search Docker Images

لتنزيل صورة محليًا، استخدم الأمر pull. يُظهر هذا المثال كيفية تنزيل صورة centos الرسمية.

$ docker pull centos
Download CentOS Docker Image

عند اكتمال التنزيل، يمكنك عرض الصور المتاحة على النظام المحلي.

$ docker images
List Docker Images

إذا لم تعد بحاجة إلى صورة، يمكنك إزالتها من النظام.

$ docker rmi centos
OR
$ docker rmi centos:latest    #where latest is the tag

تشغيل وإدارة حاويات Docker

A Docker container is a process that runs natively on Linux and shares the kernel of the host machine with other containers. Concerning a Docker image, a container is just a running image.

لبدء حاوية استنادًا إلى الصورة centos الجديدة الخاصة بك، قم بتشغيل الأمر التالي حيث يكون "centos" اسم الصورة المحلية و ” cat /etc/centos-release ” هو الأمر المطلوب تشغيله في الحاوية:

$ docker run centos cat /etc/centos-release
Run Commands in Docker Container

A container runs a discrete process that is isolated in that it has its own: file system, networking, and isolated process tree separate from the host. Note that you can manipulate a container using the container’s ID, ID-prefix, or name as shown below. The above container process exits after the command runs.

لعرض حاويات Docker، استخدم الأمر docker ps على النحو التالي. استخدم العلم -l لعرض أحدث حاوية تم إنشاؤها في جميع الحالات:

$ docker ps
OR
$ docker ps -l
List Docker Containers

لعرض جميع الحاويات بما في ذلك تلك التي خرجت، استخدم العلم -a.

$ docker ps -a
Show All Docker Containers

يمكنك أيضًا بدء حاوية باستخدام معرف الحاوية الخاص بها بعد خروجها. على سبيل المثال، في الأمر السابق، يكون معرف حاويتنا هو 94c35e616b91. يمكننا بدء تشغيل الحاوية كما هو موضح (يرجى ملاحظة أنه سيقوم بتشغيل الأمر وخروجه):

$ docker start 94c35e616b91
Start a Docker Container Using ID

لإيقاف حاوية تعمل باستخدام معرفها، استخدم أمر stop كما هو موضح.

$ docker stop 94c35e616b91

دوكر تسمح أيضًا بتعيين اسم للحاوية باستخدام الخيار --name عند تشغيلها.

$ docker run --name my_test centos cat /etc/centos-release
$ docker ps -l
Assign a Name to Docker Container

الآن يمكنك استخدام اسم الحاوية لإدارتها (بدء التشغيل، إيقاف التشغيل، الإحصاءات، الإزالة، إلخ).

$ docker stop my_test
$ docker start my_test
$ docker stats my_test
$ docker rm my_test

تشغيل جلسة تفاعلية في حاوية دوكر

لبدء جلسة قذف تفاعلية في حاوية لتمكينك من تشغيل الأوامر داخل الحاوية، قم بتشغيل الأمر التالي:

$ docker run --name my_test -it centos
Start Interactive Shell into a Container

في الأمر أعلاه، تُخبر مفاتيح -it دوكر بتخصيص جهاز الإدخال/الإخراج الظاهري المتصل بـ stdin للحاوية مما ينشئ بيئة تفاعلية للقذف bash داخل الحاوية.

يمكنك الخروج عن طريق إصدار أمر الخروج كما هو موضح.

# exit

إذا كنت تفضل عدم الخروج، يمكنك الانفصال عن الحاوية وتركها تعمل. لفعل ذلك، استخدم التسلسل الرئيسي CTRL+p ثم CTRL+q.

Detach Docker from a Running Session

يمكنك الاتصال مرة أخرى بالحاوية باستخدام الأمر attach الذي سيقوم بتعيين مدخل البيانات القياسي المحلي، ومخرجاته، وتيارات الأخطاء إلى الحاوية الجاري تشغيلها:

$ docker attach my_test

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

$ docker run --name my_test -d -it centos
$ docker attach my_test
Start Docker Container in Detached Mode

وأخيرًا، يمكنك إيقاف حاوية تعمل من جلسة المضيف عبر تشغيل الأمر التالي:

$ docker kill my_test

هذا كل شيء! في هذا الدليل، قمنا بتغطية كيفية تثبيت واستخدام دوكر سي في أوبونتو 20.04 لينكس. إذا كان لديك أي أسئلة، استخدم النموذج أدناه لطلب المساعدة.

Source:
https://www.tecmint.com/install-docker-on-ubuntu/