Hyperledger FabricV2.0基础环境搭建

Posted always-kaixuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hyperledger FabricV2.0基础环境搭建相关的知识,希望对你有一定的参考价值。

系统环境:ubuntu-18.04.3-desktop-amd64

一、git(官网有安装教程)
方法1:sudo apt-get install git     #直接使用apt-get安装,此方法安装完成后版本号为2.17.1,而git官网显示最新版本为2.25.0
方法2(采用):① sudo add-apt-repository ppa:git-core/ppa   #添加最新版本git仓库,这个PPA提供了最新的稳定的Git版本
② sudo apt-get update
③ sudo apt-get install git   #安装最新版git
④ git --version   #查看版本为2.25.0

二、curl
方法1(采用):① sudo apt install curl   #curl官网显示最新版本为7.68.0,此方式虽然不是最新版本,但后续使用没有问题
② curl --version   #7.58.0版本
方法2:① curl官网下载最新版本源码包curl-7.68.0.tar.gz   #源码安装方式,ubuntu-18.04.3系统找不到make命令,自己尝试安装一些make工具,执行过程中报错
② tar -zxvf curl-7.68.0.tar.gz
③ cd
④ ./configure
⑤ make
⑥ make install

三、wget
使用ubuntu-18.04.3自带版本,后续使用没有问题

四、docker(按照官网文档安装,网址为https://docs.docker.com/install/linux/docker-ce/ubuntu/)
① sudo apt-get remove docker docker-engine docker.io containerd runc   #删除旧版本,若之前未安装docker则忽略此步骤
② sudo apt-get update   #更新apt包索引
② sudo apt-get install
    apt-transport-https
    ca-certificates
    curl
    gnupg-agent
    software-properties-common   #安装一些软件包,以使apt可以使用基于HTTPS的仓库
③ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -   #添加Docker的官方GPG密钥
④ sudo apt-key fingerprint 0EBFCD88   #验证您现在拥有指纹9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88的密钥
⑤ sudo add-apt-repository
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu
   $(lsb_release -cs)
   stable"   #使用该命令设置稳定的存储库,硬件架构不同该命令有所不同,一般PC或服务器为x86_64 / amd64
⑥ sudo apt-get update
⑦ sudo apt-get install docker-ce docker-ce-cli containerd.io   #此命令默认安装最新版docker引擎,可指定版本
⑧ sudo docker run hello-world   #通过运行hello-world映像,验证Docker Engine - Community是否正确安装,该命令下载一个测试镜像并在容器中运行它。当容器运行时,它打印一条信息消息并退出。
为了提高镜像拉取速度,将镜像源更改为阿里国内镜像源(阿里云docker加速器获取地址为https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors):
① sudo vim /etc/docker/daemon.json    #创建配置文件
② {
    "registry-mirrors": [
        "https://9y1qsbw3.mirror.aliyuncs.com"   #该加速器地址需要登陆阿里后查看(和个人阿里账号唯一绑定)
    ]
}
③ sudo systemctl daemon-reload
④ sudo systemctl restart docker   #重启docker服务
其他设置:
① sudo systemctl enable docker   #设置docker开机自启动
② sudo usermod -aG docker $USER   #设置普通权限用户可以操作docker(默认root),$USER的值为当前登录系统的用户名

五、docker-compose(官网同样有安装文档,网址为https://docs.docker.com/compose/install/)
方法1:① sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
② sudo chmod +x /usr/local/bin/docker-compose
③ docker-compose --version   #查看版本
注:该方法受网络环境影响较为严重,校网环境下成功,而家庭宽带(移动)环境下失败,报错网络超时或无法连接到服务器等
方法2(采用):① sudo apt install python-pip   #首先安装pip
② sudo pip install docker-compose
③ docker-compose --version   #查看版本

六、golang
① 官网下载安装包go1.13.7.linux-amd64.tar.gz
② tar -zxvf go1.13.7.linux-amd64.tar.gz /usr/local   #解压后/usr/local目录下生成go文件夹
③ sudo vim /etc/profile   #将bin子目录和go工作空间目录(默认$HOME/go)添加到环境变量,内容如下:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go       #注意$HOME的值为当前用户的工作目录即/home/wangkaixuan,而不是/home
export PATH=$PATH:$GOPATH/fabric-samples/bin   #fabric的二进制文件所在目录,此目录根据fabric二进制文件具体位置而配置,后期在GOPATH目录下克隆Fabric的fabric-samples仓库,目录便会如此

七、拉取fabric-samples,fabric二进制文件及相关镜像
① mkdir /home/wangkaixuan/go    #注意此处不要用sudo,否则后边脚本执行时将无权限向该目录写入文件
② cd /home/wangkaixuan/go   #进入golang环境变量中配置的工作目录即$HOME/go  
③ curl -sSL https://bit.ly/2ysbOFE | bash -s        #该脚本默认安装最新版本,受网络环境影响较为严重,校网环境下成功,而家庭宽带(移动)环境下失败
该脚本结束后,会在当前目录即/home/wangkaixuan/go中创建fabric-samples目录,其中有bin二进制目录(golang环境变量需要配置的目录)、config配置目录、chaincode链码目录、first-network与fabcar等样例网络目录
也可指定拉取文件或镜像的版本:curl -sSL https://bit.ly/2ysbOFE | bash -s -- 2.0.0 1.4.4 0.4.18    #<fabric_version><fabric-ca_version><thirdparty_version>

八、其他
sudo apt install openjdk-11-jre-headless   #JDK11安装(官方文档中指出java版本的chaincode或SDK已在JDK11环境下进行测试,因此我们也选用JDK11)
 
至此,Hyperledger Fabric的基本环境安装完成,若想要使用node版本的SDK开发应用,则还需要安装node.js以及npm

以上是关于Hyperledger FabricV2.0基础环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

Hyperledger Fabric v2.0 中的隐式数据集合

Hyperledger Fabric 2.x 生产环境的分布式部署性能测试与应用

Hyperledger fabric 基础知识总结

Hyperledger fabric 基础知识总结

HyperLedger Fabric实战:基础环境构建

Hyperledger Fabric基础环境搭建