Skip to content
This repository has been archived by the owner on Jul 7, 2021. It is now read-only.

MSKU BcRG için Hyperledger Fabric ve Composer basit kurulum rehberi. Bu depoda takıma kurulum kodlarını ulaştırmak ve oluşabilecek hataların çözümlenmesini sağlamak amaçlanmıştır. Daha fazla ayrıntı için issue'lardan destek alabilirsiniz.

Notifications You must be signed in to change notification settings

MSKU-BcRG/Hyperledger_Composer_Fabric_Kurulum_Rehberi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Status: Archieved

Hyperledger Composer ve Fabric Kurulum Rehberi

Merhaba, hazırsanız kuruluma başlıyoruz.

Ana Kaynak : https://hyperledger.github.io/composer/unstable/installing/installing-index.html

Sistem öncelikle bir tool olan Composer ı, ardından framework Fabric i kurmamıza izin veriyor. Composer kurulumuna başlamadan önce ön koşullar sağlanmalıdır. Bu sayfada okulumuz makinelerinin çoğunun UBUNTU 16.04 kullandığını varsayarak bu dağıtım için kurulum yapacağız.

İçerik

Ön Koşullar

  • Ubuntu Linux 14.04 / 16.04 LTS (ikisi de 64-bit) İşletim Sistemi
  • Docker Engine: 17.03 veya üzeri versiyon
  • Docker-Compose:1.8 veya üzeri versiyon
  • Node: 8.9 veya üzeri versiyon (versiyon 9 desteklenmiyor)
  • npm: v5.x
  • git: 2.9.x veya üzeri versiyon
  • Python: 2.7.x versiyon
  • Sevdiğiniz bir kod editörü (tercihe bağlı).

ubuntu source:https://www.udemy.com/hyperledger/

** sanal makinede çalışmanızı tavsiye ederim ** ileride kullanacağımız bir komut bize ön koşulları indirecek fakat makineden makineye farklı hatalar alınabiliyor. Hata düzeyini minimalize etmek için siz de ön koşulları şimdiden manuel olarak indirebilirsiniz. (örneğinsudo apt-get install docker.io vb.)

Verilen komutları -sırasıyla- girin:

  • curl -O https://hyperledger.github.io/composer/unstable/prereqs-ubuntu.sh
  • chmod u+x prereqs-ubuntu.sh
  • ./prereqs-ubuntu.sh //otomatik biçimde ön koşulları indirir.

" "PROGRAM_ADI" --version " komutuyla versiyonlarınızın doğru olduğundan emin olun. İşleminizden sonra sudo apt-get update yapabilirsiniz.

Geliştirme Ortamının İndirilmesi

Sıra geliştirme ortamını indirmekte. Bileşenleri indirmek için verilen komutları -sırasıyla- girin: ** Not: npm, su ya da sudo ile kullanılamaz.

  • npm install -g composer-cli
  • npm install -g composer-rest-server
  • npm install -g generator-hyperledger-composer
  • npm install -g yo
  • npm install -g composer-playground

** Not: Bu adımların hepsini hatasız bir şekilde yaptığınızdan emin olunuz.

mnb Tekli Organizasyon

source:https://www.udemy.com/hyperledger/

** Not: Hata ile karşılaşmanız durumunda, tekrar kurmayı deneyiniz. Hata devam ediyorsa rm -rvf /usr/local/lib/node_modules çalıştırdıktan sonra, bilgisayarınızı açıp tekrar deneyiniz. Yalnız dikkatli olunuz, node modullerini kullanan başka bir uygulamanız varsa etkilenebilir.

Hyperledger Fabric Kurulumu

  • mkdir ~/fabric-dev-servers && cd ~/fabric-dev-servers //fabric-dev-servers klasörü açıp içine giriyoruz. Bu klasör ana klasörümüz oldu.
  • curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
  • tar -xvf fabric-dev-servers.tar.gz
  • ./downloadFabric.sh // Fabric kurulumu burada başlıyor.
  • ~/fabric-dev-servers klasörü içerisinde olduğunuzdan emin olarak ./startFabric.sh komutunu girin. Bu aşamada eksik bir kurulum yaptıysanız hata alabilirsiniz, çözüm için issue lara bakınız.
  • composer-playground // Bu komut sizi 8080 portunda lokal tarayıcınıza bağlayacaktır. Playground u lokal olarak kullanabilirsiniz.

playground

** Bu aşamada aldığınız ve çözümünü bulamadığınız herhangi bir hata için, kurulumu kaldırıp yenilemeyi deneyebilirsiniz, bakınız : https://hyperledger.github.io/composer/unstable/installing/development-tools.html

Geliştiriciler İçin

Artık geliştiriciler için olan kısma gelmiş bulunuyoruz. cd komutu ile ~/fabric-dev-servers içinde bulunduğunuzdan emin olduktan sonra, yo hyperledger-composer:businessnetwork komutunu girin. Ağ adına tutorial-network diyebilirsiniz. ** Verilen ağ adları, kart adları gibi değerlerin kolaylık sağlaması açısından aynı girilmesi tavsiye ediliyor, aksi halde her komutu kendi network, kart, klasör adınıza göre düzenlemek zorunda kalabilirsiniz.

  • Editör açıklaması, ismi, emaili kısımlarını serbestçe doldurabilirsiniz.
  • Lisans için Apache-2.0 ı seçin.
  • Ağ adınızı org.example.mynetwork olarak girin.
  • Boş bir ağ oluşturup oluşturmamak konusunda ne istediğinizi sorduğunda hayır(n) seçin. // Böylece iş ağınızın yapısını oluşturdunuz.

İş ağı tanımlamak için verilen adımları uygulayın:

  • ~/fabric-dev-servers/tutorial-network/models içerisinden " org.example.mynetwork.cto " dosyasının içeriğinin tamamını silip yerine repo Kurulum da verilen dosyayı yapıştırın, kaydedin.
  • ~/fabric-dev-servers/tutorial-network/lib içerisindeki " logic.js " dosyasının içeriğinin tamamını silip yerine repo Kurulum da verilen dosyayı yapıştırın, kaydedin.
  • ~/fabric-dev-servers/tutorial-network içerisindeki " permissions.acl " dosyasının içeriğinin tamamını silip yerine repo Kurulum da verilen dosyayı yapıştırın, kaydedin.

İş ağını dağıtmak için verilen adımları uygulayın:

  • ~/fabric-dev-servers/tutorial-network içinde olduğunuzdan emin olarak composer archive create -t dir -n . komutunu girin. Bu durumda sonu @0.0.1.bna ile biten zip, klasörünüzün içerisinde olmalı.
  • cd .. ile çıkarak ~/fabric-dev-servers klasörüne geri dönüyoruz. Burada ./createPeerAdminCard.shkomutunu giriyoruz.
  • Ardından tutorial-network e cd ile girerek composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna komutunu giriyoruz ve sırasıyla devam ediyoruz:
  • composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
  • composer card import --file networkadmin.card
  • composer network ping --card admin@tutorial-network // komutlarını giriyoruz. Bu komutlarla iş ağımızı dağıtmış olduk.

Composer-Rest-Server

~/fabric-dev-servers/tutorial-network içerisinden composer-rest-serverkomutunu girince açılan kısma aşağıda verilen değerleri giriniz:

  • Kart adı olarak: admin@tutorial-network
  • Never use Namespaces
  • Generated API: No ; TLS Security: No ; Event Publication: Yes // Böylelikle API yi iş ağına ve blok zincirine bağlamış olduk.

rest

Angular-App Kurulumu

Bir Angular 4 uygulaması edinebilmek için ~/fabric-dev-servers/tutorial-network içerisinden yo hyperledger-composer:angular komutunu giriniz.

  • Çalışan iş ağına bağlanmak istediğinizi sorduğunda cevabı Evet(y) olarak girin.
  • Proje adı, açıklama, editör adı, emaili serbestçe girebilirsiniz.
  • Business Network Kart sorduğunda admin@tutorial-network ü giriniz.
  • Connect to an existing REST API seçeneğini seçiniz.
  • REST Server adresi olarak http://localhost ; sunucu portu olarak ise 3000 i girin.
  • Namespaces are not used seçeneğini işaretleyin.

Uygulamayı başlatmak için ~/fabric-dev-servers/tutorial-network/angular-app dizinine girin. Ardından npm start dediğinizde uygulama yüklenecek ve 4200 portuna bağlanacaktır.

angular

** Eğer lokal bağlantıları tarayıcınız açmazsa işe yarayabilecek portlar: REST-Server-API : 3000, Angular-App : 4200, Composer-Playground : 8080

** Eğer lokalde çalışıyorsanız, yaptığınız değişiklikler kaydedilmeyecek ve uygulamayı her seferinde yeniden başlatacaksınız. Bunun için bir sunucuya bağlanmanızı tavsiye ediyoruz. Angular-App veya Composer-Playground u başlatmak için baştaki koşullar geçerliyken (Angular için npm start ve Playground için composer-playground) Composer-Rest-Server a her seferinde iş ağı tanımlamak istemiyorsanız, geçerli komutu ~/fabric-dev-servers/tutorial-network içerisindeyken girin composer-rest-server -c admin@tutorial-network -n never -w true

Composer Rest Server'a Sorgu Eklemek

Sorgular ekleyebilmek için ilk olarak iş ağımızı güncellemeliyiz:

  • ~/fabric-dev-servers/tutorial-network/models içerisinden " org.example.mynetwork.cto " dosyasının içeriğine(sonuna), repo Sorgu da verilen kodları ekleyin, kaydedin.
  • ~/fabric-dev-servers/tutorial-network/lib içerisindeki " logic.js " dosyasının içeriğinin tamamını silip yerine repo Sorgu da verilen dosyayı yapıştırın, kaydedin.
  • ~/fabric-dev-servers/tutorial-network içerisinde iken " queries.qry " adında boş bir belge oluşturun. İçeriğine, repo Sorgu da verilen dosyayı yapıştırın, kaydedin.

Ardından iş ağının versiyonunu değiştireceğiz. Bunun için ~/fabric-dev-servers/tutorial-network içerisine girin, package.json dosyasını açın ve "0.0.1" olan versiyon özelliğini "0.0.2" olarak değiştirin, kaydedin.

versiyon

tutorial-network içerisinde olduğunuzdan eminseniz composer archive create --sourceType dir --sourceName . -a tutorial-network@0.0.2.bna komutunu çalıştırın. Bu komuttan sonra klasörünüze " tutorial-network@0.0.2.bna " adında bir dosya gelmiş olmalı.

Versiyonunu yükselttiğimiz iş ağımıza, yapılan değişiklikleri adapte etmeliyiz. Bunun için " tutorial-network@0.0.2.bna " dosyasının bulunduğu klasöre giderek aşağıda verilen komutları -sırasıyla- çalıştırın:

  • composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
  • composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2
  • composer network ping -c admin@tutorial-network | grep Business //burada size versiyonu tanımlayacaktır.

Yenilenmiş Composer-Rest-Server kullanıma hazır. Şimdi cd ile ~/fabric-dev-servers/tutorial-network içine girin ve composer-rest-server ı çalıştırın.

  • Kart adı olarak: admin@tutorial-network
  • Never use Namespaces
  • Generated API: No ; TLS Security: No ; Event Publication: Yes // Böylelikle yeni versiyona kartımızı tanımlatmış olduk.

Kartı yeniden tanımladığınızda, sistem sizi localhost port 3000 ile yönlendirecek.

** Bu noktada, eski versiyon Composer-Rest-Server ın başka bir terminalde açık olmadığından, kapalı olduğundan emin olun. Eski ve yeni sürümler aynı portta -3000- çalışmak istediği için hata alabilirsiniz. ** Ayrıca Eduroam ağında kartın yeni versiyonunu indirmek isterseniz hata alabilirsiniz. Çözüm ve önerilere ilişkin Error Handling Issue ya bakabilirsiniz. ** Ayrıntılı bilgi için bknz: https://hyperledger.github.io/composer/latest/tutorials/queries

About

MSKU BcRG için Hyperledger Fabric ve Composer basit kurulum rehberi. Bu depoda takıma kurulum kodlarını ulaştırmak ve oluşabilecek hataların çözümlenmesini sağlamak amaçlanmıştır. Daha fazla ayrıntı için issue'lardan destek alabilirsiniz.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published