تثبيت الحل وتكوينه ونشره
لتنفيذ هذا الحل، هناك ثلاثة مجالات رئيسية للعمل عليها كما هو موضح في القسم التالي.
- إعداد البنية الأساسية لتقنية البلوك تشين.
- تطوير ونشر العقد الذكي.
- إنشاء التطبيق (التطبيقات) الذي سيستخدم عقدنا الذكي.
oracle-blockchain-cms-plan-oracle.zip
قم بإنشاء شبكة Hyperledger Fabric، والتي ستتألف في البداية من مؤسسة واحدة، ولكن يمكن توسيعها بسهولة إلى أكبر عدد تحتاجه من الأعضاء.
بعد ذلك، سنشرع في إنشاء العقد الذكي للتعامل مع المنطق اللازم للاستمرار والإدارة في blockchain الكيانات المطلوبة في حالة استخدام أعمالنا.
بمجرد إنشاء مشروع العقد الذكي، سنقوم بتثبيته ونشره في شبكة blockchain التي أنشأناها من قبل، ثم سنقوم بتكوين الحسابات والتسجيلات، وأخيراً سنقوم بتنفيذ بدء العقد الذكي و NFTs الخاصة به.
عند هذه النقطة، تم بالفعل نشر طرق العقد الذكي من خلال بوابة واجهة برمجة التطبيقات (API) لمثيل Oracle Blockchain الخاص بنا، والمعروف أيضًا باسم RESTPROXY، لذا فهي جاهزة للاستخدام بواسطة تطبيقات العميل، وفي حالتنا تطبيق الويب الذي أنشأناه بالفعل باستخدام VBCS، وسنقدمه في القسم الأخير.
بجانب الخطوة الأخيرة، يتم تكوين حزمة تخزين OCI حيث سيتم تخزين المستندات، وأخيرًا، تتمثل الخطوة الأخيرة في إعادة تكوين تطبيق عينة VBCS للإشارة إلى شبكة البلوك تشين التي تم تكوينها حديثًا والرزمة الجديدة التي تم تكوينها في مثيل قاعدة البيانات المؤجر الخاص بنا. بمجرد الانتهاء من جميع عمليات إعادة التكوين، سيتم نشر التطبيق في مثيل قاعدة البيانات المؤجر الخاص بنا.
تكوين شبكة Oracle Blockchain
لإنشاء شبكة Hyperledger Fabric (HLF) مقرها في Oracle Blockchain، نستخدم Oracle Blockchain Cloud Service.
سنقوم بإنشاء شبكة HLF مثيل واحد، وفقًا لحالة الاستخدام، يمكننا عرض الوظائف داخل مؤسسة واحدة تنتمي إلى الشبكة. يمكن للمؤسسات الجديدة الانضمام إلى الشبكة من خلال دمج مثيل Blockchain الخاص بها، مما يسمح للمستخدمين الجدد من هذه المؤسسات بامتلاك مجلداتهم، أو مراجعة المحتوى من المجلدات الموجودة المملوكة لأعضاء آخرين.
تكوين طبعة المؤسس
تكوين قناة
نحن بحاجة إلى الانضمام إلى المنظمات على مستوى القناة للسماح بالتواصل بين المؤسس والمشارك. سيتم تنفيذ هذا الإجراء باستخدام وحدة تحكم خدمة البلوك تشين.
تكوين حسابات المستخدم
سوف نستخدم Oracle Identity Cloud Service لتكوين مستخدم واحد على الأقل لكل قسم من الأقسام بين المجلدات التي يمكن ربطها. لكل من هؤلاء المستخدمين، سيتم إنشاء حساب للاحتفاظ به المجلدات المختلفة التي يمتلكونها.
تكوين عمليات تسجيل في نقاط توصيل وكيل REST
يدعم Oracle Blockchain Platform عمليات التسجيل في وكيل REST. يتم استخدام عمليات التسجيل هذه في رموز السلسلة حيث توجد مقاطع المعاملة المالية أو NFT، لربط هوية المتصل بالدور الذي يقوم بتنفيذ المعاملة. للقيام بذلك، يجب عليك إنشاء علاقة المستخدم بالدور المحدد في blockchain، وللبساطة يمكنك تسمية الدور كمستخدم.
اسم المستخدم | التسجيل | الطبعة |
---|---|---|
cmsrsk001 | cmsrsk001 | org1 |
cmsfin001 | cmsfin001 | org1 |
cmsleg001 | cmsleg001 | org1 |
- من وحدة تحكم خدمة البلوك تشين الخاصة بمثيل المؤسس (org1)، انتقل إلى علامة تبويب نقاط التوصيل.
- انقر على قائمة الخطوط الأفقية بجانب restproxy وحدد عرض أو إدارة التسجيلات.
- حدد تكوين تسجيل جديد.
- قم بتعيين معرف التسجيل على cmsrsk001 ومعرف المستخدم على cmsrsk001، وانقر على تسجيل.
إعداد بيئة تطوير Oracle Blockchain App Builder
يتطلب إنشاء عقد ذكي Hyperledger Fabric (HLF) معرفة جوهرية حول HLF، وكيفية كتابة التعليمات البرمجية في Java أو Typescript أو GoLang، وكيفية نشر دورة حياة مشروع العقد الذكي بالكامل وإدارتها.
تم إنشاء Oracle Blockchain App Builder بنموذجين، يمكنك استخدامه كأداة سطر أوامر تهدف إلى أتمتة خطوات الإنشاء والنشر في عمليات CI/CD، أو يمكنك استخدامه كبرنامج Microsoft Visual Code Plugin. سيسمح لك كل منهما بتنفيذ نفس الوظيفة بالضبط، ما عليك سوى تحديد الوظيفة التي تفضلها وفقًا لتفضيلاتك. يتميز Oracle Blockchain App Builder بالميزات التالية:
- التطوير: سيقوم Oracle Blockchain App Builder بإنشاء مشروع chaincode بأكمله فقط لإنشاء ما يعرف بملف مواصفات مخصص. سيشمل المشروع جميع الكيانات المشفرة، وجميع عناصر الوصول الخاصة بها مع جميع أساليب CRUD لإدارة هذه الكيانات، وكذلك توقيع أي أسلوب مخصص مطلوب لأي منطق أعمال غير قياسي أو معقد يتطلبه التطبيق، والذي سيصبح الرمز الوحيد المطلوب تنفيذه يدويًا.
- النشر: بمجرد أن يكون مشروع رمز السلسلة جاهزًا للاختبار، يمكنك نشره محليًا في شبكة Hyperledger Fabric المكونة مسبقًا، أو عن بُعد لأي مثيل موجود في السحابة أو في Oracle Blockchain Platform المحلي. يتمثل خيار آخر في حزم المشروع المطلوب نشره يدويًا من خلال وحدة تحكم Oracle Blockchain.
- الاختبار: بمجرد نشر المشروع، يمكنك اختبار أي من الطرق المكونة تلقائيًا أو الطرق المخصصة لمشروع رمز السلسلة.
- تصحيح الأخطاء: في حالة استخدام امتداد رمز Visual Studio، ستتمكن أيضًا من إجراء تصحيح أخطاء سطرًا برمز السلسلة.
يمكنك تثبيت أي من إصداري Oracle Blockchain App Builder المتوفرين التاليين:
- إذا كنت تريد استخدام Oracle Blockchain App Builder كبرنامج Microsoft Visual Studio الإضافي، فاتبع التعليمات من تثبيت امتداد Blockchain App Builder وتكوينه لرمز Visual Studio.
- إذا كنت تفضل استخدام Oracle Blockchain App Builder كأداة سطر أوامر، فاتبع الإرشادات من تثبيت Blockchain App Builder CLI وتكوينه.
إذا لم تكن مرتاحًا لتثبيت هذا النوع من أدوات التطوير وجميع تبعياتها، ولكن لديك حق الوصول إلى Oracle Cloud، فيمكنك اختيار إنشاء مربع تطوير مخصص مع جميع هذه المنتجات المثبتة بالفعل والمستعدة للاستخدام في السحابة، والوصول إليها عن بُعد. هذه الأجهزة منخفضة التكلفة بسبب شكل الحوسبة المطلوب، وتتم فوترتها فقط أثناء تشغيلها.
ملاحظة:
في التمرين المعملي، لإعداد جهاز سحابي باستخدام Visual Code Studio والبرنامج الإضافي منخفض التعليمات البرمجية لمنشئ تطبيقات Oracle Blockchain المثبت عليه، ستحتاج فقط إلى تنفيذ خطوات إعداد الإعداد وإعداد البيئة.تكوين حزمة تخزين OCI Object Storage وتكوينها
سنقوم بتكوين حزمة تخزين OCI Object Storage التي تتيح لك تخزين المستندات واسترجاعها من تطبيق ويب Oracle Visual Builder.
ملاحظة:
لمزيد من التفاصيل حول كيفية إنشاء تعليمات برمجية لتطبيق Oracle Visual Builder لتحميل الملفات أو تنزيلها من OCI Object Storage، راجع: تحميل / تنزيل الملفات من OCI Storage في تطبيق Visual Builder.لتمكين استخدام الرزم من خلال واجهة برمجة تطبيقات REST التي تقدمها رزم OCI Object Storage، يجب تكوين مفتاح واجهة برمجة تطبيقات OCI مرتبط بالمستخدم المسموح له بتنفيذ واجهة برمجة تطبيقات REST. قم بتنفيذ مهمتي التكوين التاليتين لاستخدام حزم تخزين كائنات OCI في تطبيق ويب VBCS الخاص بنا.
لتمكين استخدام رزم OCI Object Storage من تطبيق Oracle Visual Builder الخاص بك، يجب تكوين مفتاح OCI API للوصول إلى خدمات OCI عبر واجهة برمجة تطبيقات REST.