linux搭建fabric2.0

一、环境安装:

1.安装基本工具

yum install curl

2.安装docker
2.1 确保yum包更新到最新:

yum update -y

2.2 对服务器进行清理, 如果之前安装过Docker , 需要先执行卸载操作,具体命令

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine

2.3 安装需要的软件包:

yum install -y yum-utils device-mapper-persistent-data lvm2

2.4添加docker yum 源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

2.5安装docker

yum install docker-ce -y

2.6查看docker版本信息,是否安装成功

docker --version

2.7 docker基本命令
启动docker:

systemctl start docker

1
停止docker:

systemctl stop docker

重启docker:

systemctl restart docker.service

查看docker运行状态:

systemctl status docker.service

3.安装docker-compose
Compose 是定义和运行多容器Docker 应用程序的工具,可以使用YAML 文件来配置应用服务。然后, 通过单个命令可以从配置中创建井启动所有服务。
3.1 安装Docker-Compose

curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

3.2 授权

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

3.3 验证是否安装成功,查看版本号

docker-compose --version

4.安装go环境
为了适应fabric2.0,这里安装的最新版本的go

wget https://dl.google.com/go/go1.18.linux-amd64.tar.gz

安装golang语言环境:

将下载的二进制包解压至 /opt/app/目录

依次执行如下命令

cd /opt 
mkdir app 
cd app 
tar -C /opt/app/ -zxvf go1.14.2.linux-amd64.tar.gz

创建GOPATH目录

cd /opt

创建文件夹

mkdir gopath

将/opt/app/go/bin目录添加至PATH环境变量

在/etc/profile文件尾部添加:

vi /etc/profile
export GOROOT=/opt/app/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
export GOPATH=/opt/gopath

:wq保存

使其生效

source /etc/profile

查看配置是否成功:

go version

5.安装python环境:
使用以下命令检查python 版本

python --version

centos7.5默认已经安装了Python 2.7.5

fabric node.js 需要用python 2.7才可以,如果为Python 3.5.1,需要退回到Python 2.7。

6.安装Node.js Runtime and NPM
fabric目前不支持8.x系列以外的其他版本

Node.js - version 8.x

查看版本命令:

node -v

6.1:直接使用已编译好的包进行安装

cd /opt/app
mkdir nodejs
cd nodejs
wget https://npm.taobao.org/mirrors/node/v8.9.4/node-v8.9.4-linux-x64.tar.xz
tar xf node-v8.9.4-linux-x64.tar.xz
cd node-v8.9.4-linux-x64
./bin/node -v // 执行node命令 查看版本
v8.9.4

解压文件的 bin 目录底下包含了 node、npm 等命令,可以使用 ln 命令来设置软连接:

ln -s 源文件名 目标文件名

ln -s /opt/app/nodejs/node-v8.9.4-linux-x64/bin/npm /usr/local/bin/

ln -s /opt/app/nodejs/node-v8.9.4-linux-x64/bin/node /usr/local/bin/

6.2:查看node 和 npm版本信息

cd
node -v
npm -v

6.3:安装taobao镜像

npm太慢,用淘宝镜像代替npm官方镜像

npm config set registry https://registry.npm.taobao.org

配置后可通过下面方式来验证是否成功

npm config get registry

输出:

https://registry.npm.taobao.org/

6.4:安装express module测试
npm install express -g # -g是全局安装的意思

输出:

express@4.16.4
added 48 packages in 4.78s

可以在下面目录看到下载的express:

/opt/app/nodejs/node-v8.9.4-linux-x64/lib/node_modules/express

二、Fabric源码及镜像文件处理

下载 fabric 源码是因为要用到源码中的例子和工具,工具编译需要用到 go 语言环境,因此需要把源码目录放到 GOPATH 下,路径设置为 /opt/gopath

1:可以使用 Git 命令下载源码:

mkdir -p /opt/gopath/src/github.com/hyperledger/
cd /opt/gopath/src/github.com/hyperledger/
git clone https://gitee.com/hyperledger/fabric.git

如果没有 git 命令,需要先执行如下命令,构建 git 环境:

yum install git

1.1:切换fabric版本

cd fabric

git checkout v2.0.0

2:拉取fabric镜像
先进入到scripts目录

cd /opt/gopath/src/github.com/hyperledger/fabric/scripts

注意:
此处我们需要修改当前目录下的bootstrap.sh脚本

通过阅读bootstrap脚本我们可以知道,此脚本先会拉去fabric-samples脚本,再切换分支,但由于官方切换的分支为2.0.0,可实际上现在官方提供的版本库中没有这个分支,所以会导致无法切换,而且回去拉取环境所用的二进制文件,但国内网络是无法访问的,从而导致后面的操作失败,所以我们选择手动拉取fabric-samples脚本再切换到v2.0.0-beta分支,在这之前此脚本仅仅作为拉取镜像的操作,操作如下:

2.1:进入编辑页面

vim /opt/gopath/src/github.com/hyperledger/fabric/scripts/bootstrap.sh

修改脚本
在这里插入图片描述

在这里插入图片描述

此出我们修改脚本之后,bootstrap.sh只进行拉取镜像的操作

2.2:开始运行脚本

./bootstrap.sh

拉去的镜像如下
在这里插入图片描述
拉去镜像之后下面我们进入目录

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

3:拉取fabric-samples

git clone https://gitee.com/hyperledger/fabric-samples.git

3.1:拉取成功后切换到v2.0.0-beta分支

git checkout v2.0.0-beta

进入目录

cd /opt/gopath/src/github.com/hyperledger/fabric-samples

3.2:下所需要的二进制文件

wget https://github.com/hyperledger/fabric/releases/download/v2.0.1/hyperledger-fabric-linux-amd64-2.0.1.tar.gz

注:如果Linux网速慢慢,可以复制网址本地下载后上传linux

3.3:在当前目录解压包

tar -xzvf hyperledger-fabric-linux-amd64-2.0.1.tar.gz

3.4:进入目录

cd /opt/gopath/src/github.com/hyperledger/fabric-samples/first-network

3.5:运行命令

./byfn.sh up -c mychannel -s couchdb -a

在这里插入图片描述
出现end之后就代表我们运行成功了!!
在这里插入图片描述

我们查看一下启动的服务

docker ps

在这里插入图片描述

三、启动时遇到问题

在这里插入图片描述
修改go的代理为国内代理

go env -w GOPROXY=https://goproxy.cn
export GOPROXY=https://goproxy.cn
go env

在这里插入图片描述
修改完成后启动

cd /opt/fabric/fabric-samples/first-network
./byfn.sh down
./byfn.sh up -c mychannel -s couchdb -a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伤何123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值