Hyperledger Fabric目前最新发布版本为2.2,本文将详细介绍Hyperledger Fabric 2.2的环境搭建步骤,并介绍结合fabric2.2完成的具体区块链项目实例,使用java编写链码及结合区块链浏览器explorer项目完成的项目实例;实例源码可联系博主。
一、必备软件安装
如果你的Linux是新安装的,最好将源换成国内的,否则一些文件会下不下来,操作可以参考:https://www.cnblogs.com/masbay/p/10887571.html
推荐阿里云和163。阿里云是我看好像大家都用的,至于为啥推荐163我后面会提到。
1.Go语言
首先安装一些必要的依赖:
sudo apt install libtool libltdl-dev
去该网站 https://studygolang.com/dl 下载Go语言的安装包,我下的是目前最新版本: go1.14.6.linux-amd64.tar.gz
将压缩包复制到/usr/local
路径下,然后进行解压:
cd /usr/local
tar zxvf go1.14.6.linux-amd64.tar.gz
配置GO的环境变量:
打开配置文件:
sudo vim ~/.profile
在文件中添加以下内容:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
更新配置文件:
source ~/.profile
此时Go就安装完成,可以用以下命令查看是否安装成功:
go version
如果显示了版本号,就说明安装成功。我的版本号是这样的: go version go1.14.6 linux/amd64 。
2.Docker安装
如果Ubuntu系统中有旧版本的Docker,需要卸载后重新安装。操作如下:
sudo apt-get remove docker \
docker-engine \
docker.io
然后执行以下命令安装Docker:
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2:安装GPG证书:
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# step 3:写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# step 4:更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
将当前用户添加到Docker用户组:
# step 1: 创建docker用户组
sudo groupadd docker
# step 2:将当前用户添加到docker用户组
sudo usermod -aG docker $USER
#退出当前终端
exit
编辑/etc/docker/daemon.json
文件,如果没有则自行创建,添加以下内容:
{
"registry-mirrors": ["https://hub-mirror.c.163.com"]
}
最后重启服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
docker在这就安装完成,你可以查看版本来检测是否安装成功:
docker -v
3. Docker-Compose 安装
下载docker-compose的二进制包:
curl -L https://github.com/docker/compose/releases/download/1.25.0-rc1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#执行这一步时如果出现如下信息:
# Warning: Failed to create the file /usr/local/bin/docker-compose: Permission
# 则添加sudo 重新执行
#更改权限
sudo chmod +x /usr/local/bin/docker-compose
安装完成可以查看版本信息来检测是否安装成功:
docker-compose -v
二、Fabric2.2 环境搭建
首先创建文件夹
cd #cd 不加内容是默认返回Home文件夹
mkdir -p go/src/github.com/hyperledger/
#进入刚刚创建的文件夹内
cd go/src/github.com/hyperledger/
从github上拉取fabric的源码:
git clone "https://github.com/hyperledger/fabric.git"
cd fabric/
cd scripts/
#这一步会下载官方的例子以及所需要的Docker镜像
#下载是比较慢的,如果出现错误或者长时间没有速度只需要重新运行就可以了
sudo ./bootstrap.sh
注意:运行bootstrap.sh会下载很多东西,大约1~2个G,有点慢,国内把这个官网墙了,所以我们才需要之前设置镜像源,当时我就是在这里用daocloud或者aliyun怎么都下不下来,后来换了163的才好。可能有部分文件还是会下不下来,只要多运行几遍就好了。
到此fabric2.2环境就已经搭建好了。
全部下载完成后,会多出一个fabric-samples文件夹,这是个测试网络样例可以让你体验或者测试。
切换到fabric-samples文件夹:
cd fabric-samples
切换到test-network:
cd test-network/
启动测试网络:
sudo ./network.sh up
如果没出现错误,说明你的fabric已经搭建好了。
本项目为基于Hyperledger Fabric区块链的单据存储解决方案,项目主要包括链码和 Web应用两部分。Fabric链码采用JAVA开发,负责维护和存储数据及交易数据,后台为采用java开发 的Web应用,负责为用户提供访问区块链上单据的操作界面,例如数据查询、创建通道、部署链码等等操作。并提供搭建区块链浏览器,可以方便查看区块链上的数据存储情况。
典型案例:
基于Hyperledger Fabric区块链技术的疫苗监控平台
基于Hyperledger Fabric区块链技术的电动汽车充电交易信息记录溯源系统
基于Hyperledger Fabric区块链技术的疫情健康信息及外出记录监控平台
基于Hyperledger Fabric区块链技术的电子订单溯源系统
基于Hyperledger Fabric区块链技术的智慧物流信息监控系统
基于Hyperledger Fabric区块链技术的学生成绩信息管理系统
基于Hyperledger Fabric区块链技术的智慧图书馆管理系统
基于Hyperledger Fabric区块链技术的农产品溯源系统
... ... 等等