هذا المشروع يوضح بناء وتطبيق مسار نشر مؤتمت بالكامل (Fully Automated Deployment Pipeline) للخدمات المصغرة (Microservices) على بنية تحتية سحابية (AWS). الهدف كان تحقيق عملية نشر سريعة، متسقة، وموثوقة للتطبيقات."
الهدف من المشروع:
-أتمتة عملية نشر الخدمات المصغرة (Frontend, Products, Shopping Cart).
-بناء بنية تحتية سحابية قابلة للتوسع على AWS.
-تطبيق أفضل ممارسات DevOps لتقليل التدخل اليدوي وزيادة كفاءة النشر."
التقنيات المستخدمة والدور:
GitLab CI/CD: تم استخدام GitLab CI/CD كأداة رئيسية لبناء مسار التكامل المستمر والتسليم المستمر (CI/CD Pipeline).
الدور: تكوين مراحل البناء والاختبار والنشر لأتمتة دورة حياة التطبيق.
Terraform: استخدام Terraform لأتمتة توفير البنية التحتية كرمز (Infrastructure as Code - IaC) على AWS.
الدور: تعريف وإنشاء موارد AWS المطلوبة (VPC, Subnet, EC2 Instance) بشكل آلي.
Ansible: استخدام Ansible لأتمتة تهيئة الخادم (Configure Server) بعد توفيره.
الدور: إعداد بيئة التشغيل على EC2 Instance، وتثبيت Docker والتبعيات اللازمة.
Docker: تغليف الخدمات المصغرة (Frontend, Products, Shopping Cart) في حاويات Docker.
الدور: ضمان بيئات تشغيل متسقة ومعزولة للخدمات.
AWS (Amazon Web Services): البنية التحتية السحابية المستضيفة للمشروع.
الموارد المستخدمة: VPC, Subnet, EC2 Instance.
النتائج:
-تمكين النشر السريع والمؤتمت للخدمات المصغرة بمجرد دمج التغييرات في المستودع.
-تحسين الموثوقية وتقليل الأخطاء البشرية في عمليات النشر.
-بناء بيئة قابلة للتوسع بسهولة لاستضافة تطبيقات Microservices.