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

Posted 最老程序员闫涛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hyperledger Fabric区块链供应链金融实战1相关的知识,希望对你有一定的参考价值。

我们在这里将利用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

以上是关于Hyperledger Fabric区块链供应链金融实战1的主要内容,如果未能解决你的问题,请参考以下文章

学习Hyperledger Fabric 实战联盟链

学习Hyperledger Fabric 实战联盟链

Hyperledger Fabric链码之一

使用 AWS 区块链模版搭建 Hyperledger Fabric

区块链开源实现hyperledger fabric架构详解

Hyperledger Fabric区块链工具configtxgen配置configtx.yaml