English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
سنتحدث في هذا المقال عن كيفية تحويل مشروع Java Web الذي تم مناقشته في المقال السابق إلى صورة Docker. يعتقد المحرر أن هذا ممتاز، ونشاركه معكم الآن كمرجع. دعونا نتبع المحرر ونرى.
يتم تشغيل التطبيق في حاوية Docker بنفس المبدأ الذي يتم تشغيله على الجهاز الفعلي، لذا يجب أن تكون الخطوات التالية لتشغيل مشروع Java Web هذا في Docker كما يلي:
الخطوات واضحة للغاية، ولكن لصنع صورة Docker، تحتاج إلى شيء آخر: Dockerfile.
Dockerfile هو ملف يحتوي على أوامر خاصة يمكن أن يتعرف عليها Docker. عند إنشاء ملف Dockerfile، يمكنك استخدام docker build لإنشاء صورة Docker.
بدء بناء صورة Docker
الشريحة كما يلي:
شريحة بناء صورة Docker
إنشاء الصورة
docker build -t "zsl131/web01" .
ملاحظة:
docker build: إنشاء صورة Docker
-t "zsl131/web01": تحديد اسم الصورة، هنا يتم تحديد zsl131/web01؛ يتكون اسم الصورة من جزأين: المستودع والاسم، zsl131 هو اسم المستودع الذي قمت بإنشائه في hub.docker.com، وweb01 هو اسم الصورة نفسها
.: لاحظ أن هناك مسافة في البداية، مما يعني البحث عن ملف Dockerfile في الدليل الحالي لبناء الصورة.
هذا مثال يحتوي على Dockerfile الذي يتم استخدامه لإنشاء صورة Docker، يمكنك إزالة جميع الأوامر في هذا الملف وإضافة سطر جديد كل مرة: docker build -t "zsl131/web01" .، بهذا الشكل يمكنك رؤية المعلومات المختلفة التي يتم عرضها عند بناء الصورة باستخدام Dockerfile:
# از CentOS7 به عنوان تصویر پایه استفاده کنید FROM centos:7 # در صورت عدم اطلاع از نصب JDK میتوانید از دستور زیر استفاده کنید و سپس مستقیماً docker build را اجرا کنید: #RUN yum search java | grep jdk # نسخه JDK مناسب را انتخاب کنید RUN yum install -y java-1.7.0-openjdk.x86_64 # یک پوشه به نام web در ریشه ایجاد کنید RUN mkdir /web/ # مسیر کاری را به /web تنظیم کنید، پس از تنظیم میتوانید از: RUN pwd برای مشاهده مسیر فعلی استفاده کنید WORKDIR /web/ # wget نصب کنید تا بتوانید Tomcat را دانلود کنید RUN yum install -y wget # فایل فشردهشده Tomcat را دانلود کنید RUN wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-6/v6.0.48/bin/apache-tomcat-6.0.48.tar.gz # فایلهای Tomcat را استخراج کنید RUN tar zxvf apache-tomcat-6.0.48.tar.gz # مسیر ابزارها را تنظیم کنید WORKDIR /web/apache-tomcat-6.0.48/webapps/ROOT/ # لیست کنید تا ببینید فایلها و پوشههای موجود در مسیر فعلی کدامها هستند، اینجا برخی از فایلهای پیشفرض Tomcat وجود دارند RUN ls -l # تمام فایلها و پوشههای موجود در مسیر فعلی را حذف کنید RUN rm -rf * # بعد از حذف مجدد لیست کنید، اینجا هیچ فایلی وجود ندارد RUN ls -l # تمام فایلها و پوشههای موجود در پوشه WebRoot را به مسیر فعلی کپی کنید (webapps/ROOT)، میتوانید از دستور COPY نیز استفاده کنید ADD WebRoot . # پس از تکمیل کپیبرداری میتوانید لیست کنید تا ببینید آیا کپیبرداری با موفقیت انجام شده است RUN ls -l # مسیر کاری را به پوشه bin Tomcat تنظیم کنید، تا بتوانید به راحتی سرویس Tomcat را راهاندازی کنید WORKDIR /web/apache-tomcat-6.0.48/bin/ # درگاه 8080 Tomcat را به بیرون آورده شود EXPOSE 8080 # قدمت بندی سرویس Tomcat، این راهاندازی در زمان docker run تحت پوشش قرار نمیگیرد ENTRYPOINT ["./catalina.sh", "run"]
بعد تکمیل نوشتن Dockerfile، در نهایت از دستور زیر برای ساخت تصویر استفاده کنید:
docker build -t "zsl131/web01" .
يمكنك عرض الصور التي تم بناؤها حديثًا باستخدام الأمر docker images.
تشغيل القارن
docker run -d --name web01 -p 80:8080 zsl131/web01
شرح:
docker run: أمر تشغيل القارن
-d: تشغيل في الخلفية
--name web01: تعيين اسم القارن كـ web01
-p 80:8080: تحديد منفذ التعرض الخارجي كـ 80، أي عند الوصول إلى منفذ 80 من الخارج، سيتم توجيهه إلى منفذ 8080 في الداخل
zsl131/web01: اسم الصورة
عرض سجلات بدء القارن
docker logs web01
شرح:
docker logs: أمر عرض سجلات القارن
web01: اسم القارن المطلوب التحقق منه، هنا web01
زيارة
افتح المتصفح واكتب: http://192.168.99.100 للوصول إلى مشروع Java Web الذي أنشأته MyEclipse.
ملاحظة: 192.168.99.100 هو عنوان IP لمضيف docker الخاص بي، يمكنك التحقق من ذلك باستخدام الأمر docker-machine inspect test01، حيث test01 هو اسم مضيف docker.
هذا هو نهاية محتوى هذا المقال، نأمل أن يكون قد ساعدكم في التعلم، ونأمل أن تحصلوا على دعمكم الكبير لتدريب ناشد.
بيان: محتوى هذا المقال تم جمعه من الإنترنت، ويتمتع المالك الأصلي بحقوق الطبع والنشر، ويتم جمع المحتوى من قبل المستخدمين عبر الإنترنت بشكل تلقائي، ويتم إدراجه في هذا الموقع دون امتلاك حقوق الملكية، ولا يتم تعديل المحتوى بشكل يدوي، ولا يتحمل الموقع أي مسؤولية قانونية ذات صلة. إذا كنت قد وجدت محتوى يشتبه في انتهاك حقوق النسخ والتقليد، فيرجى إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # ب @) لإبلاغنا، وقدم الأدلة ذات الصلة، وسيتم حذف المحتوى المشبوه الذي تم الكشف عن انتهاك حقوق النسخ والتقليد على الفور.