لإعداد النشر المستمر لتطبيق Golang على Azure، اتبع الخطوات التالية:
الخطوة 1: إنشاء سجل حاوية Azure
1. انتقل إلى بوابة Azure وانتقل إلى قسم سجل الحاويات.
2. انقر فوق إنشاء مورد وحدد سجل الحاوية.
3. املأ التفاصيل المطلوبة ثم انقر على مراجعة + إنشاء.
4. قم بتمكين الوصول إلى Docker ولاحظ اسم المستخدم وكلمة المرور لاستخدامهما لاحقًا[1].
الخطوة الثانية: إرساء تطبيق Golang
1. استنساخ مشروع Golang API من GitHub.
2. قم بتشغيل التطبيق باستخدام "go run main.go".
3. اختبار التطبيق وإجراء اختبارات الوحدة.
4. قم بإنشاء ملف Dockerfile لإنشاء صورة Docker لتطبيق Golang[1].
الخطوة 3: نشر صورة Docker إلى Azure Container Registry
1. أنشئ صورة Docker باستخدام docker build -t
2. قم بوضع علامة على الصورة باستخدام عنوان URL للتسجيل واسم المستخدم: `علامة عامل الإرساء
3. ادفع الصورة إلى Azure Container Registry باستخدام `docker Push
الخطوة 4: إنشاء تطبيق ويب Azure
1. انتقل إلى بوابة Azure وانتقل إلى قسم خدمة التطبيقات.
2. انقر فوق إنشاء مورد وحدد تطبيق الويب.
3. املأ التفاصيل المطلوبة ثم انقر على مراجعة + إنشاء.
4. اضبط وقت التشغيل على Windows وإطار العمل على Go[2].
الخطوة 5: تكوين النشر المستمر
1. في بوابة Azure، انتقل إلى مركز النشر لخدمة التطبيقات لديك.
2. حدد الإعدادات ثم المصدر.
3. اختر GitHub Actions كموفر للإنشاء.
4. قم بتخويل حساب Azure الخاص بك مع GitHub.
5. حدد المستودع والفرع الذي تريد النشر منه.
6. قم بتكوين إعدادات الإنشاء والنشر حسب الحاجة[3][4].
الخطوة 6: إعداد إجراءات GitHub
1. قم بإنشاء ملف سير عمل GitHub Actions جديد (`*.yml`) في المستودع الخاص بك.
2. حدد سير العمل لإنشاء صورة Docker ونشرها في Azure Container Registry.
3. قم بتكوين سير العمل لتشغيل أحداث الدفع إلى الفرع المحدد[1].
الخطوة 7: ربط إجراءات GitHub بخدمة Azure App
1. في بوابة Azure، انتقل إلى مركز النشر لخدمة التطبيقات لديك.
2. حدد الإعدادات ثم المصدر.
3. اختر GitHub Actions كموفر للإنشاء.
4. قم بتخويل حساب Azure الخاص بك مع GitHub.
5. حدد المستودع والفرع الذي تريد النشر منه.
6. قم بتكوين إعدادات الإنشاء والنشر حسب الحاجة[3][4].
الخطوة 8: المراقبة والاختبار
1. مراقبة سجلات النشر في مدخل Azure.
2. اختبر التطبيق المنشور للتأكد من أنه يعمل بشكل صحيح.
باتباع هذه الخطوات، يمكنك إعداد النشر المستمر لتطبيق Golang الخاص بك على Azure باستخدام GitHub Actions وحاويات Docker.
اقتباسات:[1] https://circleci.com/blog/deploy-dockerized-go-app-to-azure/
[2] https://www.youtube.com/watch?v=Te9bF01iqWM
[3] https://learn.microsoft.com/en-us/azure/app-service/deploy-continious-deployment
[4] https://dev.to/parveensingh/continious-deployment-for-azure-app-service-github-and-azure-repos-4oog
[5] https://docs.github.com/en/actions/deployment/deploying-to-your-cloud-provider/deploying-to-azure