溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

docker的安裝以及Fabric1.1的搭建步驟

發(fā)布時間:2021-09-13 17:00:25 來源:億速云 閱讀:221 作者:chen 欄目:互聯(lián)網(wǎng)科技

本篇內(nèi)容介紹了“docker的安裝以及Fabric1.1的搭建步驟”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

  1. 安裝docker

yum -y install docker

查看 docker 版本 docker version

問題:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

解決:因為docker服務(wù)沒有啟動,所以在相應(yīng)的/var/run/ 路徑下找不到docker的進(jìn)程;執(zhí)行 service docker start 命令,啟動docker服務(wù) 就OK了。

啟用docker官方中國區(qū)加速器:

vim /etc/sysconfig/docker

--registry-mirror=https://registry.docker-cn.com 加入這語句就好

service docker start 啟動docker服務(wù)

docker的安裝以及Fabric1.1的搭建步驟

  1. 安裝docker-compose

yum -y install epel-release 安裝第三方資源庫

yum -y install python-pip 安裝python第三方軟件庫

pip install --upgrade pip 更新pip

pip install docker-compose  pip安裝docker-compose

問題:Collecting docker-compose(出現(xiàn)異常)? Could not find a version that satisfies the requirement docker-compose (from versions: ) No matching distribution found for docker-compose(6)?

解決:更換 安裝docker-compose命令

pip --default-timeout=200 install -U docker-compose Collecting docker-compose

docker的安裝以及Fabric1.1的搭建步驟

  1. 安裝go(如果已經(jīng)安裝就不用了)

wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz

下載go壓縮包

tar -xvf go1.8.3.linux-amd64.tar.gz 解壓

mv go /usr/local/ 可以自己選擇放到哪里

mkdir /root/golang 創(chuàng)建存放fabric項目的文件夾

vim /etc/profile 配置環(huán)境變量

        export GOPATH=/root/golang

        export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin

source /etc/profile 刷新環(huán)境變量

  1. 下載fabnric1.1源碼

wget https://github.com/hyperledger/fabric/archive/release-1.1.zip

把fabric壓縮包放到剛剛創(chuàng)建的文件夾下面 /root/golang/

unzip release-1.1.zip 解壓

mv fabric-release-1.1 fabric 修改文件夾名稱為fabric

  1. fabric項目搭建

cd fabric

創(chuàng)建項目目錄 mkdir fabric_project

cd scripts 進(jìn)入文件執(zhí)行 ./bootstrap.sh 下載bin (時間有點(diǎn)長,等待一下)

cp bin -r bin/ ../fabric_project/ 把bin文件夾復(fù)制到項目文件夾下面

到fabric目錄下 復(fù)制私鑰及證書文件配置文件到項目文件夾下面

cp examples/e2e_cli/configtx.yaml fabric_project/

cp examples/e2e_cli/crypto-config.yaml fabric_project/

在項目文件夾下面創(chuàng)建channel-artifacts文件夾,用來存放創(chuàng)世快文件、通道文件以及組織文件

在項目文件夾下面:

生成公鑰、私鑰、證書

./bin/cryptogen generate --config=./crypto-config.yaml

生成創(chuàng)世區(qū)塊

./bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block

生成Channel配置區(qū)塊,通道id為mychannel,名字可以隨意取,但是后面用到該通道時通道id需要與之一致

./bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/mychannel.tx -channelID mychannel

更新錨節(jié)點(diǎn)

./bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID mychannel -asOrg Org1MSP

./bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID mychannel -asOrg Org2MSP

創(chuàng)建docker-orderer.yaml以及docker-peer.yaml兩個啟動文件,用來啟動orderer服務(wù)以及ca、peer、cli、couchdb服務(wù)

docker-orderer.yaml 和docker-peer.yaml 是從 fabric/ examples/ e2e_cli/下面的docker-compose-e2e.yaml 分離出來的:如下

//=========================================================================================

docker的安裝以及Fabric1.1的搭建步驟

docker的安裝以及Fabric1.1的搭建步驟

他具體的配置在包含的文件里面

里面是2組織4節(jié)點(diǎn) 但是我不知道啥意思

//=========================================================================================

order:如下截圖

docker的安裝以及Fabric1.1的搭建步驟

peer:如下截圖

docker的安裝以及Fabric1.1的搭建步驟

docker的安裝以及Fabric1.1的搭建步驟

docker的安裝以及Fabric1.1的搭建步驟

啟動orderer和pee

docker-compose -f docker-orderer.yaml up -d

docker-compose -f docker-peer.yaml up -d

======啟動成功如下 docker ps -a 查詢鏡像服務(wù)=====

docker的安裝以及Fabric1.1的搭建步驟

會有這些端口映射

進(jìn)入客戶端

docker exec -it cli bash

創(chuàng)建一個channel

peer channel create -o orderer.example.com:7050 -c mychannel  -f ./channel-artifacts/mychannel.tx

通過mychannel.block文件來加入該channel

peer channel join -b mychannel.block

安裝智能合約

peer chaincode install -n tracegoods -p github.com/hyperledger/fabric/longlin/chaincode/go/trace_goods -v 1.0

初始化

peer chaincode instantiate -o orderer.example.com:7050 -C mychannel -n tracegoods -c '{"Args":["init","admin","admin"]}' -P "OR ('Org1MSP.member')" -v 1.0

查詢

peer chaincode query -C mychannel -n tracegoods -c '{"Args":["query","sheep_goods_list"]}'

peer chaincode invoke -C mychannel -n tracegoods -c '{"Args":["addGoods","94cdaa8576314e6bb4277c11bc3f0492","mychannel1的商品1","2000","2018/12/12","admin"]}'

peer chaincode query -C mychannel -n tracegoods -c '{"Args":["queryAllGoods","admin","1","10"]}'

docker命令

docker stop $(docker ps -aq)

docker rm $(docker ps -aq)

docker rmi --force $(docker images | grep peer0.org1 | awk '{print $3}')

****************************************************問題:

如果中途有什么報錯

docker logs -f ca 查詢?nèi)罩?ca 就是查看ca日志

********************嚴(yán)重問題:got unexpected status: SERVICE_UNAVAILABLE -- will not enqueue, consenter for this channel hasn't started yet

解決:刪除舊證書,重新生成新證書文件

********錯誤:channel create configuration tx file not found open ./channel-artifacts/mychannel.tx: no such file or directory

解決:mychannel.tx 文件生成異常 刪除channel-artifacts里面的所有文件重新生成

********問題:Error getting chaincode code chaincode: path to chaincode does

not exist: /opt/gopath/src/github.com/hyperledger/fabric/longlin/chaincode/go/chaincode_example02

       解決:修改上面 order/peer截圖的地方

“docker的安裝以及Fabric1.1的搭建步驟”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI