كيفية إعداد حاوية Apache Docker

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

في هذا البرنامج التعليمي، ستتعلم كيفية إعداد Apache Docker Container على Ubuntu. استخدم هذا البرنامج التعليمي لتتعلم كيفية البدء مع Docker والحصول على خادم ويب Apache في النهاية!

المتطلبات المسبقة

إذا كنت ترغب في متابعة الخطوات خطوة بخطوة، تأكد من أن لديك الآتي وهو جهاز Ubuntu 14.04.4 LTS أو أحدث مع Docker مثبت في هذا البرنامج التعليمي. يستخدم هذا البرنامج التعليمي Ubuntu 18.04.5 LTS مع Docker v19.03.8 وعنوان IP العام هو 13.213.48.113.

إعداد Apache Docker Container

بافتراض أنك قد قمت بتثبيت Docker بالفعل، دعنا نقم أولاً بإعداد حاوية Apache. في وقت لاحق، ستتعلم كيفية بدء تشغيلها.

أحد أسهل الطرق لجلب حاوية Apache Docker بسرعة هو تنزيل صورة حاوية موجودة مسبقًا من سجل Docker الرسمي Docker Hub. لهذا المثال، ستقوم بتنزيل وتشغيل حاوية Docker تسمى Apache.

باستخدام بضع أوامر Docker، ستقوم بتشغيل نسخة من Apache في وقت قصير. للقيام بذلك، اتبع الخطوات أدناه.

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

1. افتح الطرفية على جهاز Ubuntu الخاص بك.

2. قم بتنزيل صورة Docker، التي تحتوي على Apache وتسمى httpd، باستخدام الأمر docker pull أدناه. سيقوم هذا الأمر بتنزيل أو استحضار صورة Apache من سجل Docker، كما هو موضح أدناه.

# يستحضر صور Docker من سجل docker إلى جهازك المحلي.
docker pull httpd

تظهر الشاشة أدناه النتيجة المتوقعة عند استحضار الصورة من Docker Hub.

Pulling the Apache image from Docker Hub

3. بعد ذلك، قم بتأكيد تنزيل الصورة عن طريق تشغيل docker images لعرض جميع الصور المتاحة على جهاز الكمبيوتر الخاص بك.

# لفحص صور Docker
docker images

كما يمكنك رؤية أدناه، لديك الآن صورة Docker واحدة، وهي الصورة التي قمت بتنزيلها من Docker Hub.

Checking the Docker images

تشغيل حاوية Apache باستخدام أمر Docker.

في القسم السابق، قمت بتنزيل صورة Docker من مستودع Docker Hub. أنت الآن جاهز لإنشاء حاوية من تلك الصورة. لتشغيل حاوية Apache، ستحتاج إلى تشغيل أمر Docker على النحو التالي:

1. استدعاء أمر docker run لإنشاء حاوية جديدة بناءً على صورة Apache التي قمت بتنزيلها.

# قم بتشغيل حاوية docker جديدة بالاسم docker-apache (--name)
# ربط منفذ 80 على الكمبيوتر المحلي بمنفذ 80 على الحاوية (-p 80:80)
# في وضع منفصل (-d)
# باستخدام صورة Apache
docker run -d --name docker-apache -p 80:80 -d httpd

ثم يُرجع أمر docker run معرف فريد للحاوية التي قمت للتو بإنشائها. احفظ هذا المعرف في المربع المميز أدناه للمستقبل إذا كنت ترغب في حذف الحاوية أو إزالتها.

Running a new Docker container using an Apache image

2. بمجرد أن تكون حاوية Apache قيد التشغيل، تحقق مما إذا كنت تستطيع الوصول إلى واجهة ويب Apache عن طريق الانتقال إلى عنوان-IP-العام: 80 باستخدام متصفح الويب الخاص بك. إذا كنت تستطيع رؤية نفس الرسالة، كما يمكنك رؤيتها أدناه، فإنك قد بدأت بنجاح حاوية Apache Docker الخاصة بك.

تأكد من أن جهاز Ubuntu 14.04.4 LTS Machine لديه منفذ وارد 80 مسموح به في مجموعة الأمان.

Accessing the Apach

أخيرًا، قم بإيقاف الحاوية إذا لم تعد بحاجة لتشغيلها بتشغيل الأمر التالي. سيقوم هذا الأمر بإيقاف الحاوية بطريقة متينة.


# قم بإيقاف الحاوية بالمعرّف aaaee64a4512. تأكد من تغيير قيمة معرف الحاوية إلى الخاصة بك.


# ملاحظة: يكفي تحديد أول 12 حرفًا من معرف الحاوية.

docker stop aaaee64a4512

بديلاً، يمكنك أيضًا إيقاف تشغيل حاوية بتحديد اسمها في الأمر docker stop (docker stop docker-apache).

تشغيل حاوية Docker Apache من ملف Docker

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

نشر الحاوية باستخدام ملف Docker يتيح لك إزالة خطوة إنشاء الصورة اليدوية عند اختبار نفس الإعداد على نظام تشغيل مختلف. نهج ملف Docker هو سكريبت آلي لصور Docker.

لنقم بإنشاء ملف Docker وتشغيل حاوية منه.

1. قم بإنشاء مجلد يحمل اسم ~/apache-server-docker-demo، ثم قم بتغيير (cd) الدليل الحالي إلى ذلك المجلد.

mkdir ~/apache-server-docker-demo
cd ~/apache-server-docker-demo

2. قم بإنشاء ملف آخر، وانسخ/الصق الضبط التالي واحفظ الملف باسم index.html داخل الدليل ~/apache-server-docker-demo. ملف index.html هو صفحة HTML التي ستعرض This tutorial will teach how to Run Apache container in docker بمجرد بدء التشغيل الخاص بالحاوية والذي ستراه لاحقًا في الدورة.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>This tutorial will teach how to Run Apache container in docker .</title>
</head>
<body>
    <h1>This tutorial will teach how to Run Apache container in docker , lets GO!</h1>
</body>
</html>

3. قم بإنشاء ملف آخر، وانسخ/الصق الضبط التالي، واحفظ الملف باسم Docker file داخل الدليل ~/apache-server-docker-demo. عند الانتهاء، سيستخدم Docker هذا DockerFile لتشغيل جميع الأوامر اللازمة لبناء صورة Docker جديدة بناءً على أي صورة أساسية.

يحتوي الDockerFile أدناه على خطوات/تعليمات متنوعة ستقوم ببناء حاوية Apache:

  • Maintainer توجيه Maintainer يوفر معلومات حول المؤلف الذي يدير هذا الملف.
  • FROM توجيه FROM يبدأ مرحلة بناء جديدة ويضبط الصورة الأساسية للتعليمات التالية. في مقتطف الشفرة أدناه، centos:7 هي الصورة الأساسية.
  • COPY أمر COPY ينسخ ملفًا من جهاز المضيف (مضيف Docker) إلى الحاوية. سيتم نسخ ****index.html الذي أنشأته مسبقًا على مضيف Docker إلى الدليل /var/www/html في الحاوية.
  • EXPOSE– التعليمة EXPOSE تُعلم Docker أن الحاوية تستمع على المنافذ الشبكية المحددة أثناء التشغيل. يتم عرض خادم الويب Apache بشكل افتراضي على Port 80.
# تعليمة لملف Dockerfile لإنشاء صورة جديدة بناءً على الصورة الأساسية (httpd)
FROM httpd:2.4
MAINTAINER [email protected]
COPY index.html /var/www/html/
EXPOSE 80

4. بعد ذلك، تحقق من جميع الملفات المطلوبة أدناه في المجلد عن طريق تشغيل الأمر tree.

Verify all the required files

5. بعد ذلك، قم ببناء الصورة عن طريق تشغيل الأمر docker build. يُستخدم العلم t لوسم الصورة apache-server بالإصدار v1 و. يدل على دليل العمل الحالي.

# بناء صورة Docker
sudo docker build  -t apache-server:v1 .
build the image by running the docker build command

عند تشغيل بناء Docker، يُعيد مختلف السمات. سترى أحد هذه السمات هو الاسم REPOSITORY. اسم REPOSITORY هو apache-server، وتم وسم الصورة بالإصدار v1، كما هو موضح أدناه.

Repository Attributes

6. في النهاية، قم بتشغيل حاوية Apache باستخدام الصورة التي تم بناؤها حديثًا عن طريق تشغيل الأمر docker run.

يُستخدم العلم p لنشر منافذ الحاوية إلى المضيف، والتي هي 80:80. يُوجه العلم -it Docker لتخصيص واجهة نصية افتراضية متصلة بمدخل البيانات القياسي للحاوية.

# تشغيل حاوية Apache باستخدام الصورة التي تم بناؤها حديثًا
docker run -it -p 80:80 apache-server:v1

7. وأخيرًا ، تحقق مما إذا كنت تستطيع الوصول إلى واجهة ويب Apache عن طريق التنقل إلى عنوان-الآيبي-العام:80 باستخدام متصفح الويب الخاص بك. سترى هذه الرسالة على واجهة الويب لأنك قمت بإنشاء ملف index.html ، وقام Docker بنسخه إلى الحاوية عند بدء التشغيل.

verify if you can access the Apache web interface

الاستنتاج

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

إذاً ، ما الذي تعتزم بناؤه على صورة خادم Apache Docker؟

Source:
https://adamtheautomator.com/apache-docker/