نشر تطبيق ASP.NET على Windows Server على Compute Engine

1. نظرة عامة

ASP.NET هو إطار عمل ويب مفتوح المصدر لإنشاء تطبيقات وخدمات ويب حديثة باستخدام .NET. يقوم ASP.NET بإنشاء مواقع ويب بسيطة وسريعة تستند إلى HTML5 وCSS وJavaScript، ويمكن توسيع نطاقها لتشمل ملايين المستخدمين.

في هذا التمرين المعملي، يمكنك نشر تطبيق ASP.NET بسيط على Windows Server قيد التشغيل على Compute Engine. يعتمد هذا الدرس التطبيقي حول الترميز على الدرس التطبيقي حول الترميز نشر Windows Server باستخدام ASP.NET frame to Compute Engine. قد ترغب في إكمال هذا التمرين المعملي أولاً.

بالإضافة إلى ذلك، ستحتاج إلى Visual Studio 2013 أو إصدار أحدث لكتابة تطبيق ASP.NET ونشره في Compute Engine.

ما ستتعرَّف عليه

  • كيفية إنشاء تطبيق ASP.NET بسيط.
  • كيفية تشغيل تطبيق ASP.NET محليًا في Visual Studio.
  • كيفية نشر تطبيق ASP.NET وتشغيله على خادم Windows على Compute Engine.

المتطلبات

كيف ستستخدم هذا البرنامج التعليمي؟

القراءة فقط اقرأها وأكمِل التمارين

ما هو تقييمك لتجربتك مع Google Cloud Platform؟

حديث متوسط بارع

2. الإعداد والمتطلبات

إعداد بيئة ذاتية

من المفترض أن يكون قد سبق لك الحصول على مشروع Google Cloud Platform من التمرين المعملي السابق، لذلك لا حاجة إلى إنشاء مشروع جديد. سجِّل الدخول إلى وحدة تحكُّم Google Cloud Platform ( console.cloud.google.com) واختَر المشروع من التمرين المعملي السابق.

3- تنزيل تطبيق ASP.NET

يمكنك تنزيل النموذج كملف ZIP واستخراجه.

بدلاً من ذلك، يمكنك استنساخ مستودع git الخاص به.

git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git

وفي كلتا الحالتين، من المفترض أن يكون لديك مجلد "getting-started-dotnet" يتضمّن المحتوى التالي.

1acce2c66bc3b8aa.png

4. تشغيل التطبيق على الجهاز

انقر مرّتين على aspnet\1-hello-world\hello-world.sln. يؤدي هذا إلى فتح الحل في Visual Studio.

8a699ba7495ab79e.png

يمكنك إلقاء نظرة على WebApiConfig.cs. وهي تشتمل على معالج HelloWorld HTTP بسيط.

public class HelloWorldHandler : HttpMessageHandler
{
  protected override Task<HttpResponseMessage> SendAsync(
       HttpRequestMessage request,
       CancellationToken cancellationToken)
  {
    return Task.FromResult(new HttpResponseMessage()
    {
      Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
    });
  }
};

في Visual Studio، اضغط على F5 لإنشاء التطبيق وتشغيله. بعد أن تقوم Visual Studio بتنزيل تبعيات NuGet وإنشاء التطبيق، من المفترض أن تظهر رسالة Hello World في نافذة منبثقة في المتصفح.

77768b92a41434c2.png

بعد التأكد من أن التطبيق يعمل على الجهاز، اضغط على Shift + F5 لإيقاف التطبيق.

5- نشر Windows Server باستخدام إطار عمل ASP.NET

في هذا القسم، سنتعلّم كيفية إنشاء مثيل جديد لآلة افتراضية في Google Compute Engine مع تثبيت Windows Server وASP.NET إطار من خلال Cloud Marketplace من Google Cloud Console.

تسجيل الدخول إلى Google Cloud Console

انتقِل إلى Google Cloud Console من علامة تبويب أو نافذة متصفِّح أخرى إلى https://console.cloud.google.com. استخدِم بيانات اعتماد تسجيل الدخول التي أعددتها عند الاشتراك في Google Cloud Platform أو تلك التي قدّمها لك المشرف على المختبر.

f6cb1591046097da.png

في Google Cloud Console، انقر على رمز "القائمة" Products & (المنتجات) الخدمات في أعلى يمين الشاشة:

32152624d878d9f8.png

بعد ذلك، انتقِل إلى Cloud Marketplace

6c08c9a31e3a9c6c.png

البحث عن إطار عمل ASP.NET

اكتب ASP.NET للبحث عن ASP.NETframe ثم انقر على مربع النتائج أدناه.

d64d04962212c3c1.png

إطلاق التطبيق على Compute Engine

في الشاشة التالية، انقر على التشغيل في Compute Engine.

هناك العديد من المَعلمات التي يمكنك ضبطها عند إنشاء مثيل جديد. لنستخدم ما يلي:

الاسم

gcelab

اسم النشر

windows-aspnet-instance

المنطقة

europe-west1-dمزيد من المعلومات حول المناطق في المناطق مستندات المناطق

نوع الجهاز

1 vCPU (n1-standard-1)يتجاوز نظام n1-standard-1 لموقعنا الإلكتروني ASP.NET، لأنّه يحتوي على نواة واحدة وذاكرة وصول عشوائي سعتها 3.75 غيبي بايت. مع ذلك، يمكنك اختيار أجهزة أصغر أو أكبر، وتصل إلى ذاكرة وصول عشوائي سعتها 32 نواة / 208 غيبي بايت. يمكنك الاطّلاع على مزيد من المعلومات حول هذا النوع من الأجهزة وأنواع الأجهزة المخصّصة في مستندات أنواع الأجهزة.ملاحظة: يتضمّن مشروع جديد حصة موارد تلقائية، ما قد يؤدي إلى الحدّ من عدد نوى وحدة المعالجة المركزية (CPU). يمكنك طلب المزيد لمشاريعك.

إصدار نظام تشغيل Windows Server

2016

نوع قرص بدء التشغيل

Standard persistent diskملاحظة: يمكنك اختياريًا اختيار محرك أقراص ذي حالة صلبة (SSD) يتميز بأداء أفضل. يُرجى الاطّلاع على خيارات مساحة التخزين.

حجم القرص بالجيجا بايت

100نحن نستخدم القيمة الافتراضية لـ 100 غيغابايت، ولكن يمكنك تعديلها إلى سعة أكبر أو أقل حسب احتياجاتك.

جدار الحماية

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP trafficيمكنك الاحتفاظ بالقيم التلقائية التي ستنشئ قواعد جدار حماية للسماح بزيارات HTTP وHTTPS إلى جانب حركة بيانات WebDeploy وRDF.

انقر على Deploy (نشر) لإنشاء مثيل الجهاز الافتراضي الجديد باستخدام خادم Windows وASP.NET Secure. سينقلك هذا الإجراء إلى صفحة جديدة يمكنك الاطّلاع على مستوى التقدّم فيها.

3276c6d3647fd36.png

بعد الانتهاء، انتقِل إلى Compute Engine من القائمة على اليمين، ثم اختَر VM Instances (مثيلات الجهاز الافتراضي). من المفترض أن يظهر الجهاز الافتراضي الجديد في قائمة مثيلات VM.

fc50b1cfd8b1f4b3.png

عند النقر على عنوان IP خارجي، من المفترض أن يظهر لك أيضًا موقع IIS التلقائي الذي يتم عرضه من المثيل.

iis.PNG

لاحظ أنه يمكنك أيضًا استخدام سطح المكتب البعيد (RDP) في الجهاز، ولكننا نحتاج أولاً إلى إنشاء مستخدم Windows وكلمة مرور.

6- إنشاء مستخدم Windows وكلمة مرور

لإنشاء مستخدم Windows وكلمة مرور، اختَر إنشاء كلمة مرور Windows أو إعادة ضبطها.

cf9b67269c4fa290.png

سيؤدي ذلك إلى فتح نافذة جديدة يمكنك من خلالها إنشاء مستخدم. إبقاء الخيار التلقائي واختيار ضبط بعد بضع ثوانٍ، من المفترض أن يظهر لك مربع الحوار كلمة مرور جديدة في Windows مع كلمة المرور التي تم إنشاؤها حديثًا. قم بتدوين كلمة المرور، حيث ستحتاج إليها في القسم التالي.

7. نشر التطبيق على Windows Server على Compute Engine

حان الوقت لنشر تطبيقك على Windows Server يعمل على مثيل Compute Engine.

أولاً، عليك البحث عن عنوان IP الخارجي لمثيل Compute Engine الذي نشرته في تفعيل Windows Server باستخدام ASP.NET يتعلق إطار العمل في Compute Engine. في Cloud Console، انتقِل إلى Compute >. ابحث عن مثيل الجهاز الافتراضي (VM) وسجِّل عنوان IP الخارجي الخاص به.

8163b495fda4a4c5.png

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

في Visual Studio Solution Explorer، انقر بزر الماوس الأيمن على مشروعك واختَر نشر في قائمة السياق.

31dc67741553583e.png

في مربّع الحوار نشر الويب، اختَر مخصَّص كهدف النشر.

في مربّع الحوار ملف شخصي مخصّص جديد، أدخِل اسمًا للملف الشخصي للنشر، ثم انقر على "حسنًا".

املأ ملفك الشخصي على النحو التالي.

الخوادم

The external IP address of your Compute Engine instance. This address can be found on the صفحة مثيلات الأجهزة الافتراضية in the Cloud Console. The IP address is المؤقتة, which is sufficient for our purposes.

اسم الموقع الإلكتروني

Default Web Siteملاحظة: يجب أن يتطابق اسم الموقع الإلكتروني الذي تقدِّمه هنا مع الاسم الذي يظهر في "مدير IIS" على مثيل Compute Engine.

اسم المستخدم

The username of the Windows user account you created on your Compute Engine instance.

كلمة المرور

The password of the Windows user account you created on your Compute Engine instance.

عنوان URL المقصود

http://ملاحظة: عنوان URL المقصود هو العنوان الذي سيصبح بالإمكان الوصول من خلاله إلى صفحتك بعد نشرها.

انقر على التحقّق من صحة الاتصال للتأكّد من صحة السمات.

5587e66e1f61acd6.png

نظرًا لأن تثبيت Microsoft IIS في عملية النشر يستخدم شهادة موقعة ذاتيًا بشكل افتراضي، فسيظهر لك خطأ في الشهادة أثناء عملية التحقق. ضَع علامة في المربّع حفظ هذه الشهادة للجلسات المستقبلية في Visual Studio، وانقر على قبول لقبول الشهادة.

e7cc4bdef3064b9b.png

إذا كانت الإعدادات صالحة، انقر على الإعدادات. انقر على خيارات نشر الملفات، وضع علامة في المربّع إزالة الملفات الإضافية في الوجهة. وهذا مهم في الخطوات اللاحقة عند نشر مواقع إلكترونية جديدة على مثيل Compute Engine نفسه.

1014554485ba6720.png

انقر على نشر لنشر التطبيق. بعد اكتمال النشر، تفتح Visual Studio التطبيق في متصفّح الويب التلقائي.

feab07f5ac573240.png

8. تنظيف

هذا كل شيء! حان الوقت الآن لتنظيف الموارد التي استخدمتها (لتوفير التكلفة والتحلي بصفات جيدة مع السحابة الإلكترونية).

يمكنك إما حذف النُسخ الافتراضية أو إيقافها ببساطة، مع الأخذ في الاعتبار أن المثيلات المتوقفة قد تستمر في تحمل تكاليف متعلقة بالتخزين.

a3152ac7b76cdd4e.png

بالطبع، يمكنك أيضًا حذف المشروع بأكمله، ولكنك ستفقد أي إعدادات فوترة أجريتها (يلزم إيقاف فوترة المشروع أولاً). بالإضافة إلى ذلك، لا يؤدي حذف المشروع إلى إيقاف تحصيل الفواتير منه إلا بعد انتهاء دورة الفوترة الحالية.

9. تهانينا!

Google Compute Engine هو الأساس الذي تعتمده خدمة Google Cloud Platform للبنية الأساسية كخدمة. كما رأيت، من السهل جدًا نشر تطبيق ASP.NET على Windows Server على Compute Engine.

النقاط التي تناولناها

  • كيفية إنشاء تطبيق ASP.NET بسيط.
  • كيفية تشغيل تطبيق ASP.NET محليًا في Visual Studio.
  • كيفية نشر تطبيق ASP.NET وتشغيله على خادم Windows على Compute Engine.

الخطوات التالية

الترخيص

هذا العمل مرخّص بموجب رخصة المشاع الإبداعي 2.0 مع نسب العمل إلى مؤلف عام.

/