ubuntu搭建hyperledger-fabric1.4.0开发环境

只有一个重点,所有重点全部都是最新版本!某些问题可以参照这篇博客。
环境:Ubuntu-budgine18.04,fabric1.4.0(目前最新版本),Go(大于1.10.*)

Go环境搭建

这里不详细说搭建过程,提供国内GO环境下载地址:https://studygolang.com/dl

Docker最新版本的安装

方式一:在线安装,参照官网:https://docs.docker.com/install/linux/docker-ce/ubuntu/
方式二:下载安装包自行安装,下载地址:https://download.docker.com/linux/ubuntu/dists/bionic/pool/stable/amd64/
注:方式二的下载版本为合适此环境的版本,里面有三个安装包(N个版本),请观察软件包的名字,自行下载最新版本进行安装!
很多同志安装完之后其实docker是有问题的,这在我介绍的第一篇博客又讲到这个问题,采取下面方法:
sudo usermod -aG docker $USER
sudo chmod -R 777 /var/run/docker.sock

这里还可以添加daocloud的镜像等其他镜像。

sudo mkdir -p /etc/docker
sudo gedit /etc/docker/daemon.json
将以下内容写入文本:

{
“registry-mirrors”: [“https://obou6wyb.mirror.aliyuncs.com”]
}
写入文本后执行:
sudo systemctl daemon-reload
sudo systemctl restart docker

Docker-compose的安装

参照博客:https://github.com/docker/compose/releases

Fabric源码下载

这里需要强调的是源码需要下载到Go语言环境的gopath中,这个路径在你搭建Go环境的时候自己写的。这里给我的比对方案:
输入:go env

我的GOPATH路径为:/home/Go,则我的源码路径为:/home/Go/src/github.com/hyperledger/
如果没有对应的文件夹则自行新建!之后

cd /home/Go/src/github.com/hyperledger/
git clone https://github.com/hyperledger/fabric.git
cd fabric/scripts
source bootstrap.sh

bootstrap.sh脚本主要下载最新版本的镜像,还有一些加密工具等!如果你网速可以的话就这样做就行,但是如果掉线了,则输入:source bootstrap.sh -b则bypass download of platform-specific binaries,那么我们可以有两种方式获得这个platform-specific binaries工具!
方式一:该工具下载地址:https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/linux-amd64-1.4.0/hyperledger-fabric-linux-amd64-1.4.0.tar.gz
点击就可以下载,你可以使用迅雷等工具进行加速加载!
方式二:进入fabric目录,自行编译这些工具:make cryptogen configtxgen peer orderer peer-docker orderer-docker tools-docker,编译之后按快捷键ctrl+h,在.build/bin/目录下就是我们需要的工具。

测试环境

现在我们需要一些例子来测试我们的环境是否搭建成功。刚才的bootstrap.sh还有一个作用就是下载fabric-samples,如果在fabric/scripts没有fabric-samples请自行下载,网址:https://github.com/hyperledger/fabric-samples
查看fabric-samples下是否有bin,没有的话自行新建,然后将那些platform-specific binaries复制进来!

cd fabric/scripts/fabric-samples/first-network
./byfn.sh up

出现:
网络启动成功
说明网络成功!
进入容器:docker exec -it cli bash
查询a的余额:peer chaincode query -C mychannel -n mycc -c ‘{“Args”:[“query”,“a”]}’
返回如下:
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐