溫馨提示×

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

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

Hyperledger所用到的docker命令有哪些

發(fā)布時(shí)間:2021-12-06 15:02:34 來(lái)源:億速云 閱讀:164 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章將為大家詳細(xì)講解有關(guān)Hyperledger所用到的docker命令有哪些,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

1、docker安裝信息

$ docker info

2、docker版本

$ docker version

3、列出所有正在運(yùn)行的容器

$ docker ps

4、查看docker安裝的鏡像

$ docker images

5、刪除指定鏡像

$ docker rmi <image id>

6、刪除所有鏡像

$ docker rmi $(docker images -q)

過(guò)程中有些情況下不能全部刪除,image is referenced in multiple repositories 出現(xiàn)這種狀況,解決方式

刪除時(shí)可以用repository和tag的方式來(lái)刪除

$ docker rmi repository:tag

7、關(guān)閉運(yùn)行的鏡像

$ docker rm -f $(docker ps -aq)

8、對(duì)docker容器的處理

$ docker stop mydocker 啟動(dòng)一個(gè)或多少已經(jīng)被停止的容器

$ docker restart mydocker 停止一個(gè)運(yùn)行中的容器

$ docker start mydocker 重啟容器

9、標(biāo)記本地鏡像,將其歸入某一倉(cāng)庫(kù)

$ docker tag aberic/fabric-edge:1.0-RC2 aberic/fabric-edge:latest

10、登錄某個(gè)容器,進(jìn)入容器的bash環(huán)境

$ docker exec -it container-id/container-name bash

11、鏈碼的安裝

$ peer chaincode install -n ChaincodeName -v version -p ChaincodePath

ChaincodeName:指鏈碼的name

version:鏈碼的版本

ChaincodePath:鏈碼的路徑,默認(rèn):

github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02

12、鏈碼實(shí)例化

    12.1 這行命令摘自于深藍(lán)博客

$ peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C mychannel -n devincc -v 1.0 -c '{"Args":["init","a", "100", "b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')"

    12.2 該命令摘自于大眾

$ peer chaincode instantiate -C mychannel -n ChaincodeName -v version -c '{"Args":["init","a",,"100","b","200"]}' -P "OR ('Org1Msp.member','Org2Msp.member')"

    雖然這兩行命令都可以,但是我測(cè)試,12.2這條命令不全,無(wú)法繼續(xù)接下來(lái)的操作,所以我們使用12.1的命令,因?yàn)楹枚郒yperledger的書(shū)籍上都是12.2的這條命令,不正確,所以不建議使用,《區(qū)塊鏈開(kāi)發(fā)實(shí)戰(zhàn) Hyperledger fabric關(guān)鍵技術(shù)與案列分析》《深度探索區(qū)塊鏈 Hyperledger技術(shù)與應(yīng)用》雖然都寫(xiě)了,但是直介紹了這一行命令,接下來(lái)書(shū)里沒(méi)有提及其他接下來(lái)的操作,所以看不出來(lái)結(jié)果,但是我們?cè)诘?4步就會(huì)看到結(jié)果,不能用這條命令!

-C:后面的變量是通道名稱

-v:后面的變量鏈碼版本

-c:后面接的是初始化參數(shù)變量

-P:后面的變量指的是背書(shū)策略,列子中的策略只要是Org1或者Org2的任意一個(gè)成員的背書(shū)就可以了

-o:目前不清楚指定的概念

--tls:傳輸協(xié)議

--cafile:不清楚

13、通過(guò)chaincode查詢數(shù)據(jù)

$ peer chaincode query -C mychannel -n cj -c '{"Args":["query","a"]}'

-C:通道名稱

-n 鏈碼名字

-c 查詢參數(shù)

14、通過(guò)chaincode寫(xiě)入數(shù)據(jù),這個(gè)命令將會(huì)創(chuàng)建新的block同時(shí)更新state DB

$ peer chaincode invoke -o orderer.example.com:7050  --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem  -C mychannel -n cj -c '{"Args":["invoke","a","b","10"]}'

心法:fabric算是一個(gè)聯(lián)盟鏈,可以擁有多個(gè)組織和最少一個(gè)Orderer排序服務(wù)節(jié)點(diǎn),可以擁有多個(gè)peer(注解點(diǎn),背書(shū)節(jié)點(diǎn),記錄節(jié)點(diǎn)),一個(gè)peer可以擁有多個(gè)channel,一個(gè)channel可以擁有多個(gè)chaincode

fabric--Org(>=1)

                --peer(分不同的作用,>=4)

                        --channel(>=1)

                                --chaincode(>=1)

        --Orderer(至少一個(gè))

關(guān)于“Hyperledger所用到的docker命令有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

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

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

AI