Programmer نشر 16 ديسمبر 2015 أرسل تقرير نشر 16 ديسمبر 2015 أريد إنشاء تطبيق PHP بسيط على EC2 instance لإنشاء Docker images لتقوم بتشغيل الحاويات الافتراضية على الـ Cluster كيف أقوم بذلك؟ اقتباس
0 Lujain Maaz نشر 19 ديسمبر 2015 أرسل تقرير نشر 19 ديسمبر 2015 لإنشاء Docker images لتطبيق PHP ثم رفعها إلى Docker Hub:1- قم بتنصيب git وذلك لاستنساخ تطبيق PHP بسيط من Amazon GitHub repository إلى نظام التشغيل الخاص بك. a- تثبيت git: [ec2-user ~]$ sudo yum install -y git b- استنساخ تطبيق PHP إلى نظام التشغيل الخاص بك:[ec2-user ~]$ git clone https://github.com/awslabs/ecs-demo-php-simple-app2- تغيير الـ directories إلى المجلد ecs-demo-php-simple-app [ec2-user ~]$ cd ecs-demo-php-simple-app3- اختبر الملف Dockerfile في هذا المجلد (ملف Dockerfile هو عبارة عن manifest يصف ما هي الصورة image التي تريدها وما الذي تريد تنصيبه وتشغيله عليها).تستخدم ECS task definition صور الحاويات Doker images لتشغيل الحاويات Containers على الحاويات الافتراضية في الكتلة Cluster الخاصة بك.[ec2-user ecs-demo-php-simple-app]$ cat Dockerfile FROM ubuntu:12.04 # Install dependencies RUN apt-get update -y RUN apt-get install -y git curl apache2 php5 libapache2-mod-php5 php5-mcrypt php5-mysql # Install app RUN rm -rf /var/www/* ADD src /var/www # Configure apache RUN a2enmod rewrite RUN chown -R www-data:www-data /var/www ENV APACHE_RUN_USER www-data ENV APACHE_RUN_GROUP www-data ENV APACHE_LOG_DIR /var/log/apache2 EXPOSE 80 CMD ["/usr/sbin/apache2", "-D", "FOREGROUND"]4- قم بعمل Build لـ Docker image من DockerFile واستبدل الاسم my-dockerhub-username باسم مستخدم Docker Hub الخاص بك.[ec2-user ecs-demo-php-simple-app]$ docker build -t my-dockerhub-username/amazon-ecs-sample .5- شغّل docker images للتحقّق من أنه تم إنشاء الصورة بشكل صحيح وأن اسم الصورة يحتوى على المستودع repository الذي يمكنك إضافة اسم مستخدم Docker Hub الخاص بك.[ec2-user ecs-demo-php-simple-app]$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE my-dockerhub-username/amazon-ecs-sample latest 43c52559a0a1 12 minutes ago 258.1 MB ubuntu 12.04 78cef618c77e 3 weeks ago 133.7 MB6- قم بتشغيل الصورة التي بنيت حديثًا:[ec2-user ecs-demo-php-simple-app]$ docker run -p 80:80 my-dockerhub-username/amazon-ecs-sample7- افتح المتصفح وقم بالإشارة إلى الخادوم الذي يشغّل Docker ويستضيف الحاوية الخاصة بك.إن كنت تستخدم EC2 instance ستكون هذه قيمة DNS العامة للخادوم. والذي هو العنوان نفسه الذي تستخدمه للاتصال بالنسخة instance مع SSH.تأكد من أن مجموعة الأمان لديك تسمح بحركة المرور الواردة على المنفذ 80.إن كنت تقوم بتشغيل Docker محليًا على جهاز لينكس أشر متصفحك إلى http://localhost/إن كنت تستخدم boot2docker على جهاز ويندوز أو ماك فقم بإيجاد عنوان IP لـ VirtualBox VM التي تستضيف Docker.$ boot2docker ip 192.168.59.1038- قم بإيقاف حاوية Docker بكتابة Ctrl + C9- لرفع Docker image إلى حساب Docker Hub الخاص بك:a- سجل الدخول إلى حساب Docker الخاص بك.[ec2-user ecs-demo-php-simple-app]$ docker loginb- تحقق من أنك قد قمت بتسجيل الدخول بشكل صحيح.[ec2-user ecs-demo-php-simple-app]$ docker infoيجب أن يظهر لك "Username: my-dockerhub-username" في الخرج outputc- عمل push للصورة image[ec2-user ecs-demo-php-simple-app]$ docker push my-dockerhub-username/amazon-ecs-sampleملاحظة: إن تلقيت خطأ "FATA[0012] Error pushing to registry: Authentication is required" تحقق من أنك تستخدم المستودع الذي يملك صلاحيات أو أذونات تسمح لك بعمل Push.كيف أنشئ Docker images وأرفعها إلى Docker Hub؟ 1 اقتباس
السؤال
Programmer
أريد إنشاء تطبيق PHP بسيط على EC2 instance لإنشاء Docker images لتقوم بتشغيل الحاويات الافتراضية على الـ Cluster كيف أقوم بذلك؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.