成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Hyperledger Fabric 部署for Mac

wangxinarhat / 1339人閱讀

摘要:生成創(chuàng)世區(qū)塊生成配置交易定義錨節(jié)點為定義錨節(jié)點為定義錨節(jié)點啟動網(wǎng)絡(luò)創(chuàng)建和加入命令成功后顯示如下創(chuàng)建將加入創(chuàng)建的將加入創(chuàng)建的更新錨節(jié)點安裝實例化查詢

環(huán)境準(zhǔn)備 docker安裝

Docker最低版本要求是version 17.06.2-ce
推薦在Docker官網(wǎng)下載Mac版本

go安裝

Go最低版本要求是 1.10.x
可在使用brew或者Go官網(wǎng)下載Mac版本

下載示例,二進(jìn)制和docker鏡像

在home目錄新創(chuàng)建一個目錄,比如

makedir ~/fabric_learning
cd ~/fabric_learning

下載腳本文件https://raw.githubusercontent... 到當(dāng)前目錄下
執(zhí)行腳本

./bootstrap.sh -s version_number

e.g.

./bootstrap.sh -s 1.2.0

然后你將得到一個 fabric-samples 文件夾
在fabric-samples/bin目錄下有如下平臺相關(guān)的二進(jìn)制文件

configtxgen

cryptogen

fabric-ca-client

idemixgen

peer

configtxlator

discover

orderer

并下載了一系列所需的image文件

手動搭建byfn網(wǎng)絡(luò)

如無特別說明以下的操作都在fabric-samples/first-network目錄下

修改docker-compose-cli.yaml文件log級別為DEBUG
cli:
  container_name: cli
  image: hyperledger/fabric-tools:$IMAGE_TAG
  tty: true
  stdin_open: true
  environment:
    - GOPATH=/opt/gopath
    - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
    - CORE_LOGGING_LEVEL=DEBUG
    #- CORE_LOGGING_LEVEL=INFO
生成加密材料 (x509證書和簽名密鑰)
../bin/cryptogen generate --config=./crypto-config.yaml

命令執(zhí)行完成后會看到如下輸出

org1.example.com
org2.example.com

并在first-network目錄下生成crypto-config文件夾,證書和密鑰都在此文件夾下

證書是身份的代表,當(dāng)我們的網(wǎng)絡(luò)實體交互和交易的時候,用來簽名和驗證權(quán)限
cryptogen 需要配置一個文件- crypto-config.yaml, 此文件包含了網(wǎng)絡(luò)的拓?fù)涠x,有三個成員,分別是一個Orderer Org和兩個Peer Orgs (Org1 & Org2), 每個Peer組織維護(hù)兩個peer結(jié)點為組織和其中的組件生成一系列的證書和密鑰。

生成orderer 創(chuàng)世區(qū)塊 genesis block
export FABRIC_CFG_PATH=$PWD
../bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block
生成channel配置交易
export CHANNEL_NAME=mychannel
../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME
定義錨節(jié)點 為Org1定義錨節(jié)點
../bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org1MSP
為Org2定義錨節(jié)點
../bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org2MSP
啟動網(wǎng)絡(luò)
docker-compose -f docker-compose-cli.yaml up -d
創(chuàng)建和加入channel
Docker exec -it cli bash

命令成功后bash顯示如下

root@e1fac8b5ec98:/opt/gopath/src/github.com/hyperledger/fabric/peer#
創(chuàng)建channel
export CHANNEL_NAME=mychannel
peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
將peer0.org1.example.com加入創(chuàng)建的channel
peer channel join -b mychannel.block
將peer0.org2.example.com加入創(chuàng)建的channel
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/[email protected]/msp CORE_PEER_ADDRESS=peer0.org2.example.com:7051 CORE_PEER_LOCALMSPID="Org2MSP" CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt peer channel join -b mychannel.block
更新錨節(jié)點
peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/Org1MSPanchors.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/[email protected]/msp CORE_PEER_ADDRESS=peer0.org2.example.com:7051 CORE_PEER_LOCALMSPID="Org2MSP" CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/Org2MSPanchors.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
安裝 & 實例化chaincode
peer chaincode install -n mycc -v 1.0 -p github.com/chaincode/chaincode_example02/go/
peer chaincode instantiate -o orderer.example.com:7050 --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C $CHANNEL_NAME -n mycc -v 1.0 -c "{"Args":["init","a", "100", "b","200"]}" -P "AND ("Org1MSP.peer","Org2MSP.peer")"
查詢
peer chaincode query -C $CHANNEL_NAME -n mycc -c "{"Args":["query","a"]}"
Invoke
peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C $CHANNEL_NAME -n mycc --peerAddresses peer0.org1.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt --peerAddresses peer0.org2.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt -c "{"Args":["invoke","a","b","10"]}"

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/24367.html

相關(guān)文章

  • Hyperledger Fabric(入門)

    摘要:腳本列出了在結(jié)束時安裝的映像。在不同的體系結(jié)構(gòu),將用標(biāo)識體系結(jié)構(gòu)的字符串替換。提供了許多來支持各種編程語言,官方發(fā)布了兩款針對和的和文檔。。 入門 在我們開始之前,如果你還沒有這樣做,你可能希望檢查是否已經(jīng)在開發(fā)區(qū)塊鏈應(yīng)用程序和/或運(yùn)行Hyperledger Fabric的平臺上安裝了所有前提條件。 一旦安裝了前提條件,就可以下載并安裝HyperLedger Fabric了,當(dāng)我們在F...

    SKYZACK 評論0 收藏0
  • 基于ubuntu16.04部署IBM開源區(qū)塊鏈項目-彈珠資產(chǎn)管理(Marbles)

    摘要:協(xié)議的細(xì)節(jié)由一個名為的處理。運(yùn)行下面的腳本來讓所有的事情都發(fā)生一兩分鐘后,命令提示符將返回運(yùn)行結(jié)果如下圖所示現(xiàn)在運(yùn)行該命令查看當(dāng)前正在運(yùn)行的容器。 showImg(https://segmentfault.com/img/bVbazHF?w=709&h=159); 前言 本教程基本上是對Marbles項目的翻譯過程. 如果英文比較好的話,建議根據(jù)官方操作說明,一步步進(jìn)行環(huán)境部署。當(dāng)然你...

    voidking 評論0 收藏0
  • Hyperledger Fabric 2.0 Alpha發(fā)布了!

    摘要:新的模型要求只有足夠數(shù)量的組織批準(zhǔn)后才能允許升級鏈碼。的設(shè)計初衷是考慮到安全性,而的發(fā)行版的極簡主義特性大大降低了安全漏洞的風(fēng)險。 原文地址:https://www.xuanzhangjiong.to...作者:TopJohn Hyperledger Fabric 2.0 Alpha發(fā)布了! 隨著近期Fabric v1.4.1 LTS的發(fā)布,F(xiàn)abric項目目前工作的重點正在向1.4...

    wing324 評論0 收藏0
  • Hyperledger Fabric(介紹)

    摘要:比特幣和以太幣屬于一類區(qū)塊鏈,我們將其歸類為公共無許可的區(qū)塊鏈技術(shù)。例如,在單個企業(yè)中部署時,或由受信任的權(quán)威機(jī)構(gòu)運(yùn)作,完全拜占庭容錯的共識可能被認(rèn)為是不必要的,并且對性能和吞吐量造成過度的拖累。 介紹 一般而言,區(qū)塊鏈?zhǔn)且粋€不可變的交易分類賬,維護(hù)在一個分布式對等節(jié)點網(wǎng)絡(luò)中。這些節(jié)點通過應(yīng)用已經(jīng)由共識協(xié)議驗證的交易來維護(hù)分類帳的副本,該交易被分組為包括將每個塊綁定到前一個塊的散列的塊...

    yunhao 評論0 收藏0
  • 阿里云容器服務(wù)區(qū)塊鏈解決方案全新升級 支持Hyperledger Fabric v1.1

    摘要:阿里云容器服務(wù)區(qū)塊鏈解決方案第一時間同步升級,在新功能的基礎(chǔ)上,提供了彈性裸金屬服務(wù)器神龍內(nèi)置容器化集成阿里云日志服務(wù)等方面的增強(qiáng)。 摘要: 全球開源區(qū)塊鏈領(lǐng)域影響最為廣泛的Hyperledger Fabric日前宣布了1.1版本的正式發(fā)布,帶來了一系列豐富的新功能以及在安全性、性能與擴(kuò)展性等方面的顯著提升。阿里云容器服務(wù)區(qū)塊鏈解決方案第一時間同步升級,在v1.1新功能的基礎(chǔ)上,提供了...

    vvpale 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<