Hyperledger Fabric区块链供应链金融实战1

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-29 14:37:57

我们在这里将利用Hyperledger Fabric最新版本v2.0.0 Beta,创建一个区块链供应链金融项目,实现应收账款、承兑汇票、合同融资功能。出于学习目的,我们将Hyperledger Fabric安装在Virtualbox虚拟机中,操作系统为ubuntu 18.04。
在本篇博文中,我们将介绍Hyperledger Fabric的安装。

开发环境准备

首先安装Git:sudo apt-get install git,通常Ubuntu中已经安装了最新版本的Git。
安装curl:sudo apt-get install curl,通常Ubuntu中已经安装了最新版本的curl。

允许ssh远程登录

运行命令:sudo vim /etc/ssh/sshd_config,在其中加入:

PermitRootLogin yes

重新启动服务即可:sudo service ssh restart。

启动虚拟机Wifi

我们使用virtualbox虚拟机,如果在ubuntu安装时没有加无线网卡,可以按照下面步骤配置无线网卡,首先安装所需软件:

sudo apt-get install wpasupplicant
sudo apt-get install network-manager

运行:sudo vim /etc/netplan/50-cloud-init.yaml,添加如下内容:

# network: {config: disabled}
network:
    renderer: NetworkManager
    ethernets:
        enp0s3:
            dhcp4: true
    wifis:
        enp0s8:
            dhcp4: true
            access-points: 
                "wifi_name":
                    password: "wifi_password"
    version: 2

然后启动无线网卡:

sudo netplan generate
sudo netplan apply

运行如下命令查看系统版本:

cat /etc/lsb-release

配置虚拟机共享目录

在virtualbox设置界面中,添加一个目录作为共享目录,如下所示:
在这里插入图片描述
在ubuntu系统中安装如下工具:

sudo apt install nfs-common
sudo apt-get install virtualbox-guest-utils

这时再启动时,就可以通过/media/sf_scfdir来访问到共享文件夹中的内容。

安装配置docker

卸载已经安装的版本:

sudo apt-get remove docker docker-engine docker-ce docker.io

更新apt包:

sudo apt-get update

切换到root权限:sudo -i
安装软件:

apt-get install \
>     apt-transport-https \
>     ca-certificates \
>     curl \
>     software-properties-common

添加Docker官方的GPG密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

添加新的更新源:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"

更新apt源:apt-get update
安装docker:

sudo apt-get install docker-ce docker-ce-cli containerd.io

启动docker:

sudo systemctl start docker

将用户加入到docker组:

sudo usermod -a -G docker yantao

安装docker-compose:

apt-get install docker-compose

安装go语言开发环境

下载最新版本go安装包:https://dl.google.com/go/go1.13.5.linux-amd64.tar.gz,运行如下命令:

tar -xzvf go1.13.5.linux-amd64.tar.gz
sudo mv ./go /usr/local/.
sudo chmod 777 -R /usr/local/go

编辑profile文件:sudo vim /etc/profiles,添加如下内容:

export GOPATH=/home/yantao/scf/go
export GOROOT=/usr/local/go
export GOARCH=amd64
export GOOS=linux
export GOTOOLS=$GOROOT/pkg/tool
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

使文件内容生效:sudo source /etc/profile
此时可以查看go语言版本:go version
编序一个go程序t1.go:

package main
import "fmt"
func main() {
	fmt.Println("Hello World!")
}

运行该程序:go run t1.go
生成可执行文件:go build t1.go
如果运行上述命令不报错,就证明Go语言开发环境已经安装完成。注意:Go语言网站经常会出现上不去的情况,请大家使用科学上网的方法来解决。

安装Nodejs

下载最新版本nodejs源码文件,以源码方式编译安装:

wget https://nodejs.org/dist/latest-v13.x/node-v13.5.0.tar.gz
tar -xzvf node-v13.5.0.tar.gz
sudo apt-get install build-essential
sudo apt-get install python3-distutils
./configure
make
make install
cp /usr/local/bin/node /usr/sbin/
node -v

最后设置

git config --global core.autocrlf false
git config --global core.longpaths true
npm install -g npm
npm install grpc

安装go的grpc:

git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc
git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net
git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text
go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto

cd $GOPATH/src/
go install google.golang.org/grpc

安装Hyperledger Fabric的docker镜像

下载安装脚本:

wget https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap.sh
chmod 777 bootstrap.sh

安装特定版本的Hyperledger Fabric:

./bootstrap.sh -s -- 2.0.0-beta 1.4.4 0.4.18
git clone https://github.com/hyperledger/fabric-samples
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!