Hyperledger Fabric V1.0 for Centos7.2 开发环境搭建

区块链技术大有可为,非常值得研究,首先需要安装组件如下:

1.Docker-compose:Docker 容器管理;    
2.Go lang SDK:Go 语言开发、编译环境;     
3.Git:git 镜像克隆与提交;     
4.Rest Client: rest API 测试;     
容器主要运行有:MemberSrv 和Peer;

一、HyperLedger Fabric环境准备

a)检查版本

$ uname –r

3.10.0-229.el7.x86_64

b)更新Centos

yum update

c)安装需要软件

yum install –y  docker gcc gcc-c++

首先安装epel扩展源:

sudo yum -y install epel-release

然后安装python-pip

sudo yum -y install python-pip

pip install docker-compose

docker-compose –v   #查询版本

yum -y install nodejs npm --enablerepo=epel  #使用epel源安装nodejs及npm

验证npm安装:

npm install npm@latest

查看npm版本:

npm -v

 

二、下载源代码并创建Fabric网络

创建 Fabric 工程和项目目录

mkdir /opt/fabric

cd /opt/fabric/

下载并解压缩部署Fabric网络的相关组件 ,包括Docker Compose 脚本, 通道创建/加入脚本, 认证使用的加密要素等.

curl -L https://raw.githubusercontent.com/voodoo12345/polaris/master/fabpre.tar.gz -o fabpre.tar.gz 2> /dev/null; tar -xvf fabpre.tar.gz    
Hyperledger Fabric V1.0 for Centos7.2 开发环境搭建_第1张图片

 

三、使用Docker 创建Fabric网络 & 创建/加入通道(账本)

1)确保已经下载的docker-compose.yml文件中hyperledger/fabric-ccenv 镜像的标签是 latest,执行命令自动下载Docker镜像

docker-compose build

docker images  #确认下载了三个镜像文件成功

image

2)按照docker-compose.yml文件创建Fabric网络,创建通道(正本), 将Peer节点加入通道:

docker-compose up

3)查看容器:

docker ps

image

终端应该显示有6个独立运行的容器(3 个peer节点, 1个 独立的 orderer, CLI 和 CA)

4)确保通道已成功创建,并且节点都成功加入:

docker exec -it cli sh   #进入cli容器执行命令

5)查看通道创建/节点加入的结果:

cat results.txt

Hyperledger Fabric V1.0 for Centos7.2 开发环境搭建_第2张图片

6)验证成功创建了创世块,执行如下命令:

ls -ltr myc1.block

image

 

四、下载演示程序和SDK 模块

1)创建案例程序目录

mkdir –p test

cd pest

下载用于部署、调用和查询案例智能合约的 javascript 代码 ,同时,它也包含了node SDK 依赖的模块.

curl -OOOOOO https://raw.githubusercontent.com/hyperledger/fabric-sdk-node/master/examples/balance-transfer/{config.json,deploy.js,helper.js,invoke.js,query.js,package.json}

安装node 模块:

npm install

现在已经拥有了全部Fabric网络运行需要的组件.

 

五、使用 node SDK 注册/登录一个用户并执行部署/调用/查询操作

1)注册/登录 & 部署智能合约 (Linux or OSX):

GOPATH=$PWD node deploy.js

2)执行一个调用操作. 从 “a” 转移一定资产到 “b”:

node invoke.js

3)查询键值 “b”:

node query.js

你可能感兴趣的:(Fabric联盟链)