本篇内容主要讲解“Linux中搭建Fabric的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux中搭建Fabric的方法”吧!

fabric是由IBM贡献的超级账本框架。它是一个利用现有成熟的技术来组合而成的一个区块链技术的实现。它是一种允许可插拔实现各种功能的的模块化架构。它具有强大的容器技术,来承载各种主流语言来编写的智能合约。

一、环境整理

1、CentOS升内核

查看CentOS系统

cat/etc/redhat-release

结果显示(7.4版本)

CentOS Linux release 7.4.1708 (Core) 检查当前 CentOS 系统内核版本

uname-sr

结果显示(4.15版本)

Linux 4.15.14-1.el7.elrepo.x86_64 升内核要CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新主线稳定内核 启动ELRepo,运行以下命令

rpm--importhttps://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm-Uvhhttp://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

仓库启用后,你可以使用下面的命令列出可用的系统内核相关包:

yum--disablerepo="*"--enablerepo="elrepo-kernel"listavailable

接下来,安装最新的主线稳定内核

yum--enablerepo=elrepo-kernelinstallkernel-ml

查看可用的内核

cat/boot/grub2/grub.cfg|grepmenuentry

结果显示:

Linux4.15.14-1.el7.elrepo.x86_64[root@VM_0_14_centoshyperledger]#cat/boot/grub2/grub.cfg|grepmenuentryif[x"${feature_menuentry_id}"=xy];thenmenuentry_id_option="--id"menuentry_id_option=""exportmenuentry_id_optionmenuentry'CentOSLinux(4.15.14-1.el7.elrepo.x86_64)7(Core)'--classcentos--classgnu-linux--classgnu--classos--unrestricted$menuentry_id_option'gnulinux-3.10.0-327.el7.x86_64-advanced-49f819fd-e56d-48a4-86d3-7ebe0a68ec88'{menuentry'CentOSLinux(0-rescue-f9d400c5e1e8c3a8209e990d887d4ac1)7(Core)'--classcentos--classgnu-linux--classgnu--classos--unrestricted$menuentry_id_option'gnulinux-0-rescue-f9d400c5e1e8c3a8209e990d887d4ac1-advanced-49f819fd-e56d-48a4-86d3-7ebe0a68ec88'{

替代要用的内核例如:

CentOSLinux(4.15.14-1.el7.elrepo.x86_64)7(Core)grub2-set-default'CentOSLinux(4.15.14-1.el7.elrepo.x86_64)7(Core)

‘ 查看内核启动项是否设置成功查看内核启动项是否设置成功

grub2-editenvlist

结果显示:

saved_entry=CentOSLinux(4.15.14-1.el7.elrepo.x86_64)7(Core)

查询多余的内核

rpm-qa|grepkernel

删除多余内核

yumremove

你要删除的内核 重启系统即可

reboot二、环境安装配置

1、docker安装

1.1安装Docker CE版,如果有旧的先卸载

sudoyumremovedocker\docker-common\docker-selinux\docker-engine

1.2 开始安装Docker ce

sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2$sudoyum-config-manager\--add-repo\https://download.docker.com/linux/centos/docker-ce.reposudoyum-config-manager--enabledocker-ce-edgesudoyum-config-manager--enabledocker-ce-testsudoyum-config-manager--disabledocker-ce-edgesudoyummakecachefastsudoyuminstalldocker-ce

1.3检查是否安装成功

[root@VM_0_14_centoshyperledger]#docker--versionDockerversion18.04.0-ce-rc1,build0c7f7c6

1.4 启动docker

/bin/systemctlstartdocker.service

2、Docker-Compose安装

需要服务器支持curl功能,如果服务器不支持curl,需要执行如下操作安装curl依赖

yuminstallcurl

2.1 安装最新版本 根据官网所指向github项目,目前docker-compose最新版为1.15.0 执行命令

curl-Lhttps://github.com/docker/compose/releases/download/1.15.0/docker-compose-`uname-s`-`uname-m`>/usr/local/bin/docker-compose

给于权限

chmod+x/usr/local/bin/docker-compose

2.2、查看版本

[root@VM_0_14_centoshyperledger]#docker-compose--versiondocker-composeversion1.15.0,builde12f3b9

docker常用命令

杀死所有正在运行的容器

dockerkill$(dockerps-a-q)

删除所有已经停止的容器

dockerrm$(dockerps-a-q)

删除所有镜像

dockerrmi$(dockerimages-q)

强制删除所有镜像

dockerrmi-f$(dockerimages-q)

3、GO语言安装

GO安装链接 ==最后环境如下==

三、源码下载

1、首先进入到go的path目录

cd$GOPATH

2、新建文件夹

mkdir-psrc/github.com/hyperledger

3、然后进入到如下路径

/opt/gopath/src/github.com/hyperledger

4、下载fabric

gitclonehttps://github.com/hyperledger/fabric.git

4.1、进入到fabric目录查看fabric的git版本

cdfabric/gitbranch-a

结果显示(当前使用的是master分支)

*masterremotes/origin/HEAD->origin/masterremotes/origin/feature/caremotes/origin/feature/convergenceremotes/origin/masterremotes/origin/release-1.0remotes/origin/release-1.1remotes/origin/v0.6remotes/origin/v1.0.0-preview

4.2、切换到release-1.1分支

gitcheckoutrelease-1.1

查看有没有切换成功

gitbranch-a

结果显示

master*release-1.1remotes/origin/HEAD->origin/masterremotes/origin/feature/caremotes/origin/feature/convergenceremotes/origin/masterremotes/origin/release-1.0remotes/origin/release-1.1remotes/origin/v0.6remotes/origin/v1.0.0-preview

5、下载fabric-samples 5.1、进入到与fabric平级的目录

cd$GOPATH/src/github.com/hyperledger

5.2、下载源码

gitclonehttps://github.com/hyperledger/fabric-samples.git

5.3,进入fabric-samples目录,查看分支并切换到1.1

cdfabric-samples/gitbranch-agitcheckoutrelease-1.1

下载完成后的结构应该如下图所示

四、下载镜像和要执行的二进制文件

1、进入到fabric-samples目录 ==如果网络环境足够好,能访问外网的话,可以直接执行下面这条语句就会下载所有镜像和要执行的二进制的文件==

curl-sSLhttps://goo.gl/6wtTN5|bash-s1.1.0

下载完成后要会多出这两个文件bin和config

2、连不了外网的按下面执行(下载镜像和二进制文件这两个步骤) 进到fabric目录下的scripts 并修改bootstrap.sh

cdfabric/scripts/vimbootstrap.sh

修改图中圈的部分,修改为1.1.0版本,然后保存

image

运行bootstrap.sh下载镜像(要等几分钟)

./bootstrap.sh

3、下载二进制执行文件 进入到fabric-samples文件

cdfabric-samples/

通过wget下载1.1.0版本的二进制文件

wgethttps://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/linux-amd64-1.1.0/hyperledger-fabric-linux-amd64-1.1.0.tar.gz

解压下载的文件,会发现多了bin和config两个个文件夹

tar-zxvfhyperledger-fabric-linux-amd64-1.1.0.tar.gz

把bin配置到环境

cdbin/pwdvim/etc/profilesource/etc/profile

修改的项

五、运行文件

进到fabric-samples/first-network

cdfabric-samples/first-network/

生成配置文件

./byfn.sh-mgenerate

选择同意,会默认生成mychannel

起动项目

./byfn.sh-mup

成功的结果:

成功后关闭

./byfn.sh-mdown

==阿里云服务器要修改base文件夹的docker-compose-base.yaml,所有的environment下添加 -GODEBUG=netdns=go,如下图==

到此,相信大家对“Linux中搭建Fabric的方法”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!