إعداد بيئة التطوير على نظام التشغيل macOS X
يمكنك إنشاء تطبيقات Azure Service Fabric للعمل على أنظمة مجموعات Linux باستخدام نظام التشغيل macOS X. يعرض هذا المستند كيفية إعداد نظام Mac للتطوير.
المتطلبات الأساسية
لا يعمل Azure Service Fabric في الأصل على نظام التشغيل macOS X. لتشغيل نظام مجموعة "تصميم الخدمة" محليًا، تُتاح صورة حاوية Docker مُكونة مسبقًا. قبل البدء، ستحتاج إلى:
متطلبات النظام لتثبيت Docker Desktop على نظام Mac
تلميح
لتثبيت Docker على نظام Mac، اتبع الخطوات الواردة في وثائق Docker. بعد التثبيت، يمكنك استخدام Docker Desktop لتعيين التفضيلات بما في ذلك حدود الموارد واستخدام القرص.
إنشاء حاوية محلية وإعداد Service Fabric
لإعداد حاوية Docker محلية وتشغيل مجموعة Service Fabric عليها، قم بتنفيذ الخطوات التالية:
قم بتحديث تكوين برنامج Docker الخفي على مضيفك باستخدام الإعدادات التالية وأعد تشغيل برنامج Docker الخفي:
{ "ipv6": true, "fixed-cidr-v6": "fd00::/64" }
يمكنك تحديث هذه الإعدادات مباشرةً في ملف daemon.json في مسار تثبيت Docker. يمكنك تعديل إعدادات تكوين البرنامج الخفي مباشرةً في Docker. حدد رمز Docker، ثم حدد Preferences>Daemon>Advanced.
ملاحظة
يوصى بتعديل البرنامج الخفي مباشرةً في Docker لأن موقع ملف daemon.json يمكن أن يختلف من جهاز إلى آخر. على سبيل المثال، ~/Library/Containers/com.docker.docker/Data/database/com.docker.driver.amd64-linux/etc/docker/daemon.json.
تلميح
نوصي بزيادة الموارد المخصصة لمنصة Docker عند اختبار التطبيقات الكبيرة. يمكن القيام بذلك عن طريق تحديد رمز Docker، ثم تحديد Advanced لضبط عدد الذاكرات الأساسية والذاكرة.
بدء تشغيل نظام المجموعة.
احدث:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:latest
Ubuntu 18.04 LTS:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u18
تلميح
سيؤدي هذا إلى سحب الصورة بأحدث إصدار من Service Fabric بشكل افتراضي. للحصول على مراجعات معينة، الرجاء زيارة صفحة Service Fabric Onebox على Docker Hub.
اختياري: أنشئ صورة Service Fabric الموسعة.
قم بإنشاء ملف باسم
Dockerfile
في دليل جديد لإنشاء صورتك المخصصة:ملاحظة
يمكنك تكييف الصورة أعلاه باستخدام Dockerfile لإضافة برامج أو تبعيات إضافية في الحاوية الخاصة بك. على سبيل المثال، ستسمح إضافة
RUN apt-get install nodejs -y
بدعم تطبيقاتnodejs
كملفات ضيف تنفيذية.FROM mcr.microsoft.com/service-fabric/onebox:u18 RUN apt-get install nodejs -y EXPOSE 19080 19000 80 443 WORKDIR /home/ClusterDeployer CMD ["./ClusterDeployer.sh"]
تلميح
سيؤدي هذا إلى سحب الصورة بأحدث إصدار من Service Fabric بشكل افتراضي. للحصول على مراجعات معينة، الرجاء زيارة صفحة Docker Hub.
لإنشاء صورتك القابلة لإعادة الاستخدام من
Dockerfile
، افتح محطة طرفية وإلىcd
الدليل الذي يحمل ثمDockerfile
شغل:docker build -t mysfcluster .
ملاحظة
ستستغرق هذه العملية بعض الوقت ولكنها تكون مطلوبة مرة واحدة فقط.
يمكنك الآن بدء تشغيل نسخة محلية من Service Fabric بسرعة متى احتجت إليها عن طريق تشغيل:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mysfcluster
تلميح
قم بكتابة اسم لمثيل الحاوية الخاصة بك حتى يمكن التعامل معها بطريقة أكثر قابلية للقراءة.
إذا كان تطبيقك يستمع من منافذ معينة، فيجب تحديد المنافذ باستخدام علامات
-p
إضافية. على سبيل المثال، إذا كان تطبيقك يستمع عبر المنفذ 8080، فأضف علامة-p
التالية:docker run -itd -p 19000:19000 -p 19080:19080 -p 8080:8080 --name sfonebox mcr.microsoft.com/service-fabric/onebox:u18
سيستغرق نظام المجموعة لحظة للبدء. عند تشغيلها، يمكنك عرض السجلات باستخدام الأمر التالي أو الانتقال إلى لوحة المعلومات لعرض حالة المجموعات:
http://localhost:19080
docker logs sftestcluster
لإيقاف تشغيل الحاوية وتنظيفها، استخدم الأمر التالي. ومع ذلك، سنستخدم هذه الحاوية في الخطوة التالية.
docker rm -f sftestcluster
القيود المعروفة
فيما يلي القيود المعروفة لنظام المجموعة المحلية التي تعمل في حاوية لأجهزة Mac:
- لا تعمل خدمة DNS ولا يتم دعمها حالياً داخل الحاوية. مشكلة #132
- يتطلب تشغيل التطبيقات المستندة إلى الحاوية تشغيل SF على مضيف Linux. تطبيقات الحاوية المتداخلة غير مدعومة حالياً.
قم بإعداد Service Fabric CLI (sfctl) على جهاز Mac الخاص بك
اتبع الإرشادات الموجودة في Service Fabric CLI لتثبيت Service Fabric CLI (sfctl
) على جهاز Mac الخاص بك.
تعمل أوامر CLI على دعم التفاعل مع كيانات Service Fabric، بما في ذلك أنظمة المجموعات والتطبيقات والخدمات.
- للاتصال بنظام المجموعة قبل نشر التطبيقات، قم بتشغيل الأمر أدناه.
sfctl cluster select --endpoint http://localhost:19080
قم بإنشاء التطبيق الخاص بك على جهاز Mac الخاص بك باستخدام Yeoman
توفر Service Fabric أدوات التدعيم التي تساعدك على إنشاء تطبيق Service Fabric من الجهاز باستخدام منشئ قالب Yeoman. استخدم الخطوات التالية للتأكد من أن منشئ قالب Service Fabric Yeoman يعمل على جهازك:
يجب تثبيت Node.js و"مدير حزمة العقدة" على جهاز Mac. يمكن تثبيت البرنامج باستخدام HomeBrew على النحو التالي:
brew install node node -v npm -v
تثبيت مُنشئ قالب Yeoman على جهازك من "مدير حزمة العقدة":
npm install -g yo
ثبّت منشئ Yeoman الذي تفضله باتباع الخطوات الواردة في وثائق البدء. لإنشاء تطبيقات Service Fabric باستخدام Yeoman، اتبع الخطوات التالية:
npm install -g generator-azuresfjava # for Service Fabric Java Applications npm install -g generator-azuresfguest # for Service Fabric Guest executables npm install -g generator-azuresfcontainer # for Service Fabric Container Applications
بعد تثبيت المُنشئات، قم بإنشاء ملف تنفيذي أو خدمات حاوية عن طريق تشغيل
yo azuresfguest
أوyo azuresfcontainer
، على التوالي.لإنشاء تطبيق Service Fabric Java على جهاز Mac، يجب تثبيت JDK الإصدار 1.8 وGradle على الجهاز المضيف. يمكن تثبيت البرنامج باستخدام HomeBrew على النحو التالي:
brew update brew cask install java brew install gradle
هام
قد تقوم الإصدارات الحالية من
brew cask install java
بتثبيت إصدار أحدث من JDK. تأكد من تثبيت JDK 8.
انشر التطبيق الخاص بم على جهاز Mac لديك من الوحدة الطرفية
بعد إنشاء تطبيق Service Fabric وتحديث إصداره، يمكنك نشر التطبيق باستخدام Service Fabric CLI:
قم بالاتصال بنظام مجموعة Service Fabric التي تعمل داخل مثيل الحاوية على جهاز Mac الخاص بك:
sfctl cluster select --endpoint http://localhost:19080
من داخل دليل المشروع الخاص بك، قم بتشغيل البرنامج النصي للتثبيت:
cd MyProject bash install.sh
إعداد تطوير .NET Core 3.1
ثبّت .NET Core 3.1 SDK for Mac لبدء إنشاء تطبيقات C# Service Fabric. تكون حزم تطبيقات .NET Core Service Fabric مستضافة على NuGet.org.
قم بتثبيت مكون Service Fabric الإضافي لـ Eclipse على جهاز Mac الخاص بك
يوفر Azure Service Fabric مكوناً إضافياً لـ Eclipse Neon، (أو إصدار أحدث) لـ Java IDE. يبسط المكون الإضافي عملية إنشاء خدمات Java وإنشائها ونشرها. لتثبيت أو تحديث مكون Service Fabric الإضافي لـ Eclipse إلى أحدث إصدار، اتبع هذه الخطوات. يمكن أيضاً تطبيق الخطوات الأخرى الواردة في Service Fabric لوثائق Eclipse : إنشاء تطبيق وإضافة خدمة إلى أحد التطبيقات وإلغاء تثبيت أحد التطبيقات وما إلى ذلك.
الخطوة الأخيرة هي إنشاء مثيل للحاوية بمسار مشترك مع المضيف الخاص بك. يتطلب المكون الإضافي هذا النوع من إنشاء مثيل للعمل مع حاوية Docker على جهاز Mac الخاص بك. على سبيل المثال:
docker run -itd -p 19080:19080 -v /Users/sayantan/work/workspaces/mySFWorkspace:/tmp/mySFWorkspace --name sfonebox mcr.microsoft.com/service-fabric/onebox:latest
يتم تحديد السمات على النحو التالي:
/Users/sayantan/work/workspaces/mySFWorkspace
هو المسار المؤهل بالكامل لمساحة العمل على جهاز Mac الخاص بك./tmp/mySFWorkspace
هو المسار الموجود داخل الحاوية حيث يجب تعيين مساحة العمل إليه.
ملاحظة
إذا كان لديك اسم/ مسار مختلف لمساحة العمل الخاصة بك، فقم بتحديث هذه القيم في الأمر docker run
.
إذا بدأت تشغيل الحاوية باسم مختلف عن sfonebox
، فحدِّث قيمة الاسم في ملف testclient.sh في تطبيق Java الخاص بممثل Service Fabric.
الخطوات التالية
- قم بإنشاء ونشر أول تطبيق Service Fabric Java على Linux باستخدام Yeoman
- قم بإنشاء ونشر أول تطبيق Service Fabric Java على Linux باستخدام مكون Service Fabric الإضافي لـ Eclipse
- قم بإنشاء نظام مجموعة Service Fabric في مدخل Microsoft Azure
- قم بإنشاء نظام مجموعة Service Fabric باستخدام Azure Resource Manager
- فهم نموذج تطبيقService Fabric
- استخدم Service Fabric CLI لإدارة تطبيقاتك
- إعداد بيئة تطوير Linux على Windows