docker的安装以及Fabric1.1的搭建步骤

本篇内容介绍了“docker的安装以及Fabric1.1的搭建步骤”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、重庆小程序开发公司、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了嘉禾免费建站欢迎大家使用!

  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服务没有启动,所以在相应的/var/run/ 路径下找不到docker的进程;执行 service docker start 命令,启动docker服务 就OK了。

启用docker官方中国区加速器:

vim /etc/sysconfig/docker

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

service docker start 启动docker服务

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(出现异常)? 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(如果已经安装就不用了)

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 创建存放fabric项目的文件夹

vim /etc/profile 配置环境变量

        export GOPATH=/root/golang

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

source /etc/profile 刷新环境变量

  1. 下载fabnric1.1源码

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

把fabric压缩包放到刚刚创建的文件夹下面 /root/golang/

unzip release-1.1.zip 解压

mv fabric-release-1.1 fabric 修改文件夹名称为fabric

  1. fabric项目搭建

cd fabric

创建项目目录 mkdir fabric_project

cd scripts 进入文件执行 ./bootstrap.sh 下载bin (时间有点长,等待一下)

cp bin -r bin/ ../fabric_project/ 把bin文件夹复制到项目文件夹下面

到fabric目录下 复制私钥及证书文件配置文件到项目文件夹下面

cp examples/e2e_cli/configtx.yaml fabric_project/

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

在项目文件夹下面创建channel-artifacts文件夹,用来存放创世快文件、通道文件以及组织文件

在项目文件夹下面:

生成公钥、私钥、证书

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

生成创世区块

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

生成Channel配置区块,通道id为mychannel,名字可以随意取,但是后面用到该通道时通道id需要与之一致

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

更新锚节点

./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

创建docker-orderer.yaml以及docker-peer.yaml两个启动文件,用来启动orderer服务以及ca、peer、cli、couchdb服务

docker-orderer.yaml 和docker-peer.yaml 是从 fabric/ examples/ e2e_cli/下面的docker-compose-e2e.yaml 分离出来的:如下

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

docker的安装以及Fabric1.1的搭建步骤

docker的安装以及Fabric1.1的搭建步骤

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

里面是2组织4节点 但是我不知道啥意思

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

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 查询镜像服务=====

docker的安装以及Fabric1.1的搭建步骤

会有这些端口映射

进入客户端

docker exec -it cli bash

创建一个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 查询日志 ca 就是查看ca日志

********************严重问题: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的搭建步骤”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


分享标题:docker的安装以及Fabric1.1的搭建步骤
URL标题:http://pwwzsj.com/article/jpdpog.html