安装准备

1. 安装git、cRUL、gcc/g++和make

$ sudo apt-get update
$ sudo apt-get install build-essential git curl make
$ $ which gcc
/usr/bin/gcc

2. 安装Docker和Docker Compose

安装Docker-CE

参考: ubuntu16.04下docker安装和简单使用

! 注意安装的docker版本是否满足要求

查看docker版本

$ docker --version
Docker version 18.06.1-ce, build e68fc7a

安装docker-compose

! 注意版本

参考:

docker-compose安装

# 下载
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加写权限
$ sudo chmod +x /usr/local/bin/docker-compose # 查看docker-compose版本
$ docker-compose --version
docker-compose version 1.22.0, build f46880fe

3. 安装go

go下载地址

! 注意go版本是否满足要求

1) 安装

$ wget https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz
$ tar zxvf go1.10.1.linux-amd64.tar.gz
$ sudo mv go /usr/local/
$ mkdir -p ~/go/{src,bin}
$ vi ~/.bashrc

2) 设置环境变量

需要在~/.bashrc中设置环境变量GOPATH,GOROOT,PATH,例如:

export GOROOT=/usr/local/go
export GOPATH=~/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin:.

保存退出,使得配置立即生效

source ~/.bashrc

3) 验证配置是否正常

$ echo $GOROOT
/usr/local/go
$ echo $GOPATH
/home/bob/go
$ which go
/usr/local/go/bin/go

4. 安装Nodejs和NPM

! 注意版本

参考: nodejs ubuntu安装

# 查看版本
$ node -v
v8.11.4
$ npm -v
5.6.0

5. 安装python

# 安装python
$ sudo apt-get install python
$ python -V
Python 2.7.12 # 安装pip
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 切换到root用户
$ su
# python get-pip.py

!!!!!! 友情提示: 如果使用了VMware Workstation,做到这里的时候,最好先使用快照(snapshot)进行快速备份,防止之后出现莫名其妙的问题实在解决不了,可以从备份点恢复再来,以免完全重新开始,创建虚拟机。

使用脚本安装fabric

1. 下载启动脚本并安装

$ cd ~
$ mkdir hyperledger-fabric
$ cd hyperledger-fabric
$ curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/release-1.2/scripts/bootstrap.sh -o bootstrap.sh
$ ls
bootstrap.sh
$ chmod +x bootstrap.sh
$ ./bootstrap.sh 1.2.0 1.2.0 0.4.10

注意:

hyperledger-fabric



hyperledger-fabric-ca下载速度较慢

可以考虑使用代理加速下载

安装过程记录:

===> List out hyperledger docker images
hyperledger/fabric-ca 1.2.0 66cc132bd09c
hyperledger/fabric-ca latest 66cc132bd09c
hyperledger/fabric-tools 1.2.0 379602873003
hyperledger/fabric-tools latest 379602873003
hyperledger/fabric-ccenv 1.2.0 6acf31e2d9a4
hyperledger/fabric-ccenv latest 6acf31e2d9a4
hyperledger/fabric-orderer 1.2.0 4baf7789a8ec
hyperledger/fabric-orderer latest 4baf7789a8ec
hyperledger/fabric-peer 1.2.0 82c262e65984
hyperledger/fabric-peer latest 82c262e65984
hyperledger/fabric-zookeeper 0.4.10 2b51158f3898
hyperledger/fabric-zookeeper latest 2b51158f3898
hyperledger/fabric-kafka 0.4.10 936aef6db0e6
hyperledger/fabric-kafka latest 936aef6db0e6
hyperledger/fabric-couchdb 0.4.10 3092eca241fc
hyperledger/fabric-couchdb latest 3092eca241fc

2. 设置环境变量

在PATH中加入//hyperledger-fabric/fabric-samples/bin,形如:

$ vi ~/.bashrc
# 修改PATH
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin:~/hyperledger-fabric/fabric-samples/bin:.

使得环境变量立即生效

$ source ~/.bashrc

测试修改是否生效

$ fabric-ca-client version
fabric-ca-client:
Version: 1.2.0
Go version: go1.10
OS/Arch: linux/amd64

3. 创建和管理网络

1> 生成数字证书和创世区块

$ cd ~/hyperledger-fabric/fabric-samples/first-network/
$ ./byfn.sh generate
Generating certs and genesis block for channel 'mychannel' with CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] y
proceeding ...
/home/bob/hyperledger-fabric/fabric-samples/first-network/../bin/cryptogen
...

其中byfn.sh为启动这个网络的启动脚本,启动脚本中除建立一个包含4个节点和1个Order service的网络外,还会启动一个容器用来执行脚本在channel中加入节点,部署和初始化chaincode,以及在部署的chaincode上执行交易。默认channel名称为mychannel,脚本程序会给网络实例生成数字证书和密钥;生成genesis block用来启动ordering service;一些用来配置channel的配置交易

2> 使用docker-compose启动网络

$ ./byfn.sh up
Starting for channel 'mychannel' with CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] y
proceeding ...
LOCAL_VERSION=1.2.0
...

安装过程记录:

使用docker ps来查看节点启动情况

使用docker images查看安装镜像

关闭网络

使用./byfn.sh down

$ ./byfn.sh down
Stopping for channel 'mychannel' with CLI timeout of '10' seconds and CLI delay of '3' seconds
Continue? [Y/n] y
proceeding ...
Stopping cli ... done
Stopping peer0.org1.example.com ... done
Stopping peer1.org1.example.com ... done
Stopping orderer.example.com ... done
Stopping peer0.org2.example.com ... done
Stopping peer1.org2.example.com ... done
Removing cli ... done
Removing peer0.org1.example.com ... done
Removing peer1.org1.example.com ... done
Removing orderer.example.com ... done
Removing peer0.org2.example.com ... done
Removing peer1.org2.example.com ... done
Removing network net_byfn
Removing volume net_orderer.example.com
Removing volume net_peer0.org1.example.com
Removing volume net_peer1.org1.example.com
Removing volume net_peer0.org2.example.com
Removing volume net_peer1.org2.example.com
Removing volume net_peer0.org3.example.com
WARNING: Volume net_peer0.org3.example.com not found.
Removing volume net_peer1.org3.example.com
WARNING: Volume net_peer1.org3.example.com not found.
...

参考:

ubuntu16.04 HyperLedger Fabric 1.2.0 开发环境搭建的更多相关文章

  1. android 5.0开发环境搭建

    Android 5.0 是 Google 于 2014 年 10 月 15 日发布的全新 Android 操作系统.本文将就最新的Android 5.0 开发环境搭建做详细介绍. 工具/原料 jdk- ...

  2. Hyperledger Fabric (1.0)环境部署 chaincode【转】

    三.测试Fabric 其实我们在前面运行./network_setup.sh up的时候系统已经运行了一个Example02的ChainCode测试,部署上去的ChainCodeName是mycc,所 ...

  3. CC++初学者编程教程(2) Microsoft Visual C++ 6.0开发环境搭建

    上一篇演示的是如何安装VS2010,本文演示的是如何安装Microsoft Visual C++ 6.0 简称VC6. 有同学经常VC6都是很古董的版本了,为啥他还存在,不得不说VC6是微软一个很经典 ...

  4. Hadoop-2.8.0 开发环境搭建(Mac)

    Hadoop是一个由Apache基金会开发的分布式系统架构,简称HDFS,具有高容错性.可伸缩性等特点,并且可以部署在低配置的硬件上:同时,提供了高吞吐量的数据访问性能,适用于超大数据集的应用程序,以 ...

  5. IMX6开发板Qtopia2.2.0开发环境搭建以及编译镜像

    搭建 Qtopia2.2.0 开发环境,需要先搭建 Android 的编译环境,然后在 Android 编译环境的基础上,再搭建 Qtopia2.2.0 编译环境.以下内容基于迅为-iMX6开发板.Q ...

  6. 配置ubuntu 16.04.1 LTS odoo 10.0开发环境

    使用VMware Fusion 8.5.0创建ubuntu 64bit虚拟机:使用ubuntu-16.04.1-desktop-amd64.iso镜像缺省安装ubuntu,用户名odoo,密码1234 ...

  7. 转:Ubuntu16.04下配置php+vscode+xdebug开发环境

    转:https://blog.csdn.net/its_my_dream/article/details/78549619 操作系统是Ubuntu16.04,首先要安装和配置php运行环境,我这里用的 ...

  8. Cocos2d-x.3.0开发环境搭建

    配置:win7 + VS2012 + Cocos2d-x.3.0 + Cocos Studio v1.4.0.1 前言:本文介绍在上述配置下进行游戏开发的环境搭建.开发语言为C++.如果读者不需要查看 ...

  9. 配置ubuntu 14.04.3 LTS odoo 9.0开发环境

    使用VMware Fusion 8.0.1创建ubuntu 64bit虚拟机:使用ubuntu-14.04.3-desktop-amd64.iso镜像缺省安装ubuntu,用户名odoo,密码1234 ...

随机推荐

  1. 删除csdn上面自己上传的资源

    今天想删掉以前的资源,才发现CSDN并没有提供删除资源的功能,然后去网上搜了下,这才删除了,不知道怎么删除的小伙伴看过来~ 首先,找到自己要删除资源的页面,举个栗子 https://download. ...

  2. final发布用户使用报告

    用户数量:13人 姓名如下(包括化名):张小斌.王瑞瑞.蛋蛋.小美.晨曦.小丽.张利刚.小闫.小谢.小崔.小欢欢.小胡胡.小霞霞 寻找的用户多为王者荣耀交流协会成员的同学,对PSP Daily软件有极 ...

  3. eclipse 中git无法https下载提交代码

    使用eclipse下载github代码时,报错信息为cannot open git-upload-pack,如下图: 其实就是ssl协议的版本不对, 2018年2月8日后禁止通过TLSv1.1协议连接 ...

  4. sys os

     python常用的一些东西——sys.os等(转) 2012-09-19 14:51:4 1.常用内置函数:(不用import就可以直接使用)      help(obj) 在线帮助, obj可是任 ...

  5. windows安装oracle-odbc驱动错误原因

    在windows7上准备使用powerdesigner16连接oracle逆向生成表结构,确发现一直无法连接oracle,其原因是本机没有ODBC驱动. 第一步 安装oracle11g客户端,这里是具 ...

  6. ArcMap图层属性表中添加图片

    一看标题是不是有点懵?懵就对了!刚接触到的时候我也有点懵,属性表不是都是文本啊数字啊之类的格式,怎么还可以存图片,下面就带大家来看看吧! 一.关于图层入库问题 图层进入数据库和图层以shp格式存储时, ...

  7. 修改oracle数据库内存报错

    今天修改oracle数据库内存时, alter system set memory_max_target=10240M scope=spfile;语句正确修改:但重启时却报错 : SQL> al ...

  8. 利用树莓派来安装opencv从而来调动摄像头工作(没有坑,超超自己试过)

    超超最近参加了学校里一位特别厉害的老师讲的课(两天,我就从一个小白然后了解了树莓派以及Arduino这些我之前都没有了解过的东西,由于结课的需要,我们需要自己设计一个创意以及完成作品)所以才有了这篇文 ...

  9. opencv+qt+vtk,编程时报错'detail':ambiguous symbol

    解决办法: 把#include <vtkSmartPointer.h>放到所有头文件的最前面:

  10. PL/SQL连接远程服务器数据库,出现ORA-12154: TNS: 无法解析指定的连接标识符。

    故障环境:上礼拜新装了一台服务器(win server2008r2),并在服务器上安装了ORACLE 11g database.且已经做好监听配置,开通了1521端口. 我又在局域网内另一台pc端装了 ...