189 8069 5689

Hyperledger所用到的docker命令有哪些

这篇文章将为大家详细讲解有关Hyperledger所用到的docker命令有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的昂昂溪网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

1、docker安装信息

$ docker info

2、docker版本

$ docker version

3、列出所有正在运行的容器

$ docker ps

4、查看docker安装的镜像

$ docker images

5、删除指定镜像

$ docker rmi 

6、删除所有镜像

$ docker rmi $(docker images -q)

过程中有些情况下不能全部删除,image is referenced in multiple repositories 出现这种状况,解决方式

删除时可以用repository和tag的方式来删除

$ docker rmi repository:tag

7、关闭运行的镜像

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

8、对docker容器的处理

$ docker stop mydocker 启动一个或多少已经被停止的容器

$ docker restart mydocker 停止一个运行中的容器

$ docker start mydocker 重启容器

9、标记本地镜像,将其归入某一仓库

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

10、登录某个容器,进入容器的bash环境

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

11、链码的安装

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

ChaincodeName:指链码的name

version:链码的版本

ChaincodePath:链码的路径,默认:

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

12、链码实例化

    12.1 这行命令摘自于深蓝博客

$ 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')"

    虽然这两行命令都可以,但是我测试,12.2这条命令不全,无法继续接下来的操作,所以我们使用12.1的命令,因为好多Hyperledger的书籍上都是12.2的这条命令,不正确,所以不建议使用,《区块链开发实战 Hyperledger fabric关键技术与案列分析》《深度探索区块链 Hyperledger技术与应用》虽然都写了,但是直介绍了这一行命令,接下来书里没有提及其他接下来的操作,所以看不出来结果,但是我们在第14步就会看到结果,不能用这条命令!

-C:后面的变量是通道名称

-v:后面的变量链码版本

-c:后面接的是初始化参数变量

-P:后面的变量指的是背书策略,列子中的策略只要是Org1或者Org2的任意一个成员的背书就可以了

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

--tls:传输协议

--cafile:不清楚

13、通过chaincode查询数据

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

-C:通道名称

-n 链码名字

-c 查询参数

14、通过chaincode写入数据,这个命令将会创建新的block同时更新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算是一个联盟链,可以拥有多个组织和最少一个Orderer排序服务节点,可以拥有多个peer(注解点,背书节点,记录节点),一个peer可以拥有多个channel,一个channel可以拥有多个chaincode

fabric--Org(>=1)

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

                        --channel(>=1)

                                --chaincode(>=1)

        --Orderer(至少一个)

关于“Hyperledger所用到的docker命令有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


标题名称:Hyperledger所用到的docker命令有哪些
文章网址:http://cdxtjz.cn/article/ghepdh.html

其他资讯