logo资料库

Hyperledger Fabric在Ubuntu上的搭建和例子运行.docx

第1页 / 共68页
第2页 / 共68页
第3页 / 共68页
第4页 / 共68页
第5页 / 共68页
第6页 / 共68页
第7页 / 共68页
第8页 / 共68页
资料共68页,剩余部分请下载后查看
版本及环境信息
1基于Docker-compose 的一键部署
1.1安装/停止/启动Docker
1.1.1新安装操作系统后
1.1.2删除Docker(若有存在)
1.1.3安装Docker
1.1.3.1国外镜像源
1.1.3.2国内镜像源
1.1.4用户加入docker组
1.1.5设置镜像加速器(国内镜像源的仓库)
1.1.6停止Docker
1.1.7启动Docker
1.1.8查看Docker是否启动
1.2安装 docker-compose
1.2.1安装 python-pip
1.2.2安装 docker-compose
1.3下载hyperledger-fabric、hyperledger-peer节点、hyperledge
1.3.1Fabric 0.6
1.3.2Fabric 1.0
1.4部署和启动Fabric节点
1.4.1使用 noops 模式
1.4.2使用 PBFT 模式
1.4.2.1下载 compose 文件
1.4.2.2非会员节点
1.4.2.2.1Fabric 0.6
1.4.2.2.1.1启动一个 4 个 PBFT 节点的集群
1.4.2.2.1.2查看节点是否运行
1.4.2.2.1.3进入节点pbft_vp0_1
1.4.2.2.1.4chaincode部署
1.4.2.2.1.5chaincode查询
1.4.2.2.1.6chaincode调用
1.4.2.2.1.7进入节点pbft_vp1_1
1.4.2.2.1.8停止4个节点
1.4.2.2.2Fabric 1.0
1.4.2.2.2.1启动一个 1个 PBFT 节点的集群
1.4.2.2.2.2查看启动后的容器镜像
1.4.2.3会员节点(demo使用该内容)
1.4.2.3.1会员节点文件用户密码
1.4.2.3.2权限管理
1.4.2.3.3启动一个4个PBFT会员节点的集群
1.4.2.3.4用户登陆
1.4.2.3.5chaincode 部署
1.4.2.3.6chaincode 调用
1.4.2.3.7chaincode 查询
1.4.2.3.8查看节点运行状态
1.4.2.3.9停止4个节点
1.4.2.3.10查日志
1.4.2.3.11登录其它节点可查询到相同智能合约的相同数据
1.4.2.3.12查看区块链信息
1.5部署和使用合约
1.5.1非会员节点
1.5.1.1使用 chaincode
1.1.1.1.1部署 chaincode(go lang example)
1.1.1.1.1.1进入一个节点
1.1.1.1.1.1.1Fabric 0.6
1.1.1.1.1.1.1Fabric 1.0
1.1.1.1.1.2部署chaincode(合约)
1.1.1.1.1.2.1Fabric 0.6
1.1.1.1.1.2.1.1采用peer chaincode命令部署
1.1.1.1.1.2.1.2采用REST进行部署
1.1.1.1.1.2.1.3采用REST进行查询
1.1.1.1.1.2.1.4采用REST进行交易
1.1.1.1.1.1.1Fabric 1.0
1.1.1.1.1.1.1.1采用peer chaincode命令部署
1.1.1.1.1.2设置智能合约ID到变量
1.1.1.1.1.3查询 chaincode
1.1.1.1.1.3.1在第一个节点vp0进行查询
1.1.1.1.1.3.2进入第二个节点vp1进行查询
1.1.1.1.1.4调用 chaincode
1.1.1.1.1.5查peer chaincode参数
1.1.1.1.1.6查example在节点docker中的路径(不是操作系统文件系统的路径)
1.1.1.1.1.7查节点日志
1.1.1.1.2部署 chaincode(java lang example)
1.1.1.1.2.1在Docker里面安装gradle
1.5.2会员节点
1.5.2.1使用 chaincode
1.1.1.1.3部署 chaincode(go lang example)
1.1.1.1.3.1进入一个节点
1.1.1.1.3.2部署chaincode(合约)
1.1.1.1.3.2.1默认用户jim登录
1.1.1.1.3.2.2登录第一个节点vp0
1.1.1.1.3.2.3采用peer chaincode命令部署
版本及环境信息 Ubuntu16.04 版本 Hyperledger Fabric 0.6 版本(默认),特别指定 1.0 的则是 Fabric1.0 版本 对应的安装部署文档是 0.6 版本 https://yeasy.gitbooks.io/blockchain_guide/content/hyperledger/v0.6/install.html 暂时不采用最新或缺省的 1.0 版本,可能会无法查询合约。 1 基于 Docker-compose 的一键部署 1.1 安装/停止/启动 Docker 1.1.1 新安装操作系统后 sudo apt-get update $sudo apt-get remove vim-common 删除操作系统默认的 $sudo apt-get install vim 扩大虚拟机内存到 1.5GB,否则可能会在部署和查询 chaincode 时报下面的错误 1.1.2 删除 Docker(若有存在)
sudo apt-get remove docker docker-engine 1.1.3 安装 Docker 1.1.3.1 国外镜像源 Docker 支持 Linux 常见的发行版,如 Redhat/Centos/Ubuntu 等。 $ curl -fsSL https://get.docker.com/ | sh 特别注意:这里可能连接不上国外的镜像,需要国内的 Docker 软件源镜像安装 1.1.3.2 国内镜像源 curl -sSL https://get.daocloud.io/docker | sh ( 好 像 用 这 个 curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -,也可以)
1.1.4 用户加入 docker 组 上面显示安装成功,如果一般用户需要使用 docker 命令,需要加入 docker 组中,那么我就把当前用户 test 或 zhouhj 用户加入,对于 root 用户则不需要加入,因为 docker 默认运行 root 用户使用 docker 命令。 sudo usermod -aG docker test 1.1.5 设置镜像加速器(国内镜像源的仓库) 接下来需要修改配置 docker dns 以及镜像加速器,国内访问 Docker Hub 有时会遇到困难,此时可以配置镜 像加速器。国内很多云服务商都提供了加速器服务。阿里云加速器、DaoCloud 加速器、灵雀云加速器 注册用户并且申请加速器,会获得如 https://jxus37ad.mirror.aliyuncs.com 这样的地址。我们需要将其配置给 Docker 引擎。注意这里不同系统不同 docker 版本在的位置文件不同. 安装 docker 后才有该文件。 sudo vi /etc/systemd/system/multi-user.target.wants/docker.service (经过试验,可采用上面的 id 和在 Ubuntu16.04 版本可使用这个路径) 修改 ExecStart 的值
ExecStart=/usr/bin/dockerd --dns 192.168.234.255 -H=tcp://0.0.0.0:2375 -H=unix:///var/run/docker.sock --registry-mirror=https://jxus37ad.mirror.aliyuncs.com (这里的 dns 192.168.234.255 没修改为自己的,好像也可以?) 1.1.6 停止 Docker 安装成功后,停止默认启动的 Docker 服务。 $ sudo service docker stop 或在 ps -ef |grep docker 后通过 kill -9 ***结束进程 停止 docker 前,必须先停止节点,即如 docker-compose -f 4-peers-with-membersrvc-explorer.yml stop 1.1.7 启动 Docker 用如下命令手动启动 Docker 服务。 $ sudo docker daemon --api-cors-header="*" -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
1.1.8 查看 Docker 是否启动 ps -ef |grep docker
1.2 安装 docker-compose 1.2.1 安装 python-pip 首先,安装 python-pip 软件包。 $ sudo aptitude install python-pip $ sudo apt-get install python-pip 1.2.2 安装 docker-compose
$ sudo pip install docker-compose 若有提示更新 pip 则执行 pip install --upgrade pip 1.3 下载 hyperledger-fabric、hyperledger-peer 节点、hyperledger-membersrvc 会员管 理等镜像 1.3.1 Fabric 0.6 在上面设置了镜像加速器后需重启机器才能使国内镜像有效,下载下面相关镜像将非常快速,否则就会非常 慢或下载不了。 安装部署并进行配置, 下载相关镜像,并进行配置。经过验证,采用 yeasy 版本是可以运行合约的。 $ docker pull yeasy/hyperledger-fabric:0.6-dp \ && docker pull yeasy/hyperledger-fabric-peer:0.6-dp \ && docker pull yeasy/hyperledger-fabric-base:0.6-dp \ && docker pull yeasy/blockchain-explorer:latest \ && docker tag yeasy/hyperledger-fabric-peer:0.6-dp hyperledger/fabric-peer \ && docker tag yeasy/hyperledger-fabric-base:0.6-dp hyperledger/fabric-baseimage \ && docker tag yeasy/hyperledger-fabric:0.6-dp hyperledger/fabric-membersrvc 有时一开始几次会提示连接不上,好像试了五六次之后就可以顺畅下载了
也可以使用 官方仓库 中的镜像。 $ docker pull hyperledger/fabric-peer:x86_64-0.6.1-preview \ && docker pull hyperledger/fabric-membersrvc:x86_64-0.6.1-preview \ && docker pull yeasy/blockchain-explorer:latest \ && docker tag hyperledger/fabric-peer:x86_64-0.6.1-preview hyperledger/fabric-peer \ && docker tag hyperledger/fabric-peer:x86_64-0.6.1-preview hyperledger/fabric-baseimage \ && docker tag hyperledger/fabric-membersrvc:x86_64-0.6.1-preview hyperledger/fabric-membersrvc 不要用下面最新的版本,在 2017-04-02 时,最新版本是 1.0 版本,本次不采用该版本,因为可能会导致合约
分享到:
收藏