ubunut18.04系统下安装hyperledger fabric1.4.0新手教程
1.为提升下载速度,首先ubuntu的源更改为阿里云的源
配置文件的备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vim /etc/apt/sources.list //编辑配置文件
然后将所有https://mirrors.ubuntu.com/换成https://mirrors.aliyun.com/ubuntu/
更新
sudo apt-get update
sudo apt-get upgrade
你会发现更新的速度非常快
2.go安装
下载go最新版本
下载 go最新版本压缩文件 go1.14.linux-amd64.tar.gz,并将其解压到指定目录(此处为/usr/local),可点开go查看新版本
wget https://studygolang.com/dl/golang/go1.14.linux-amd64.tar.gz
tar xzvf go1.14.linux-amd64.tar.gz -C /usr/local
配置环境变量
配置GO的环境变量
sudo vim ~/.profile
在文本中添加以下内容:
export PATH=$PATH:/usr/local/go/binexport GOROOT=/usr/local/goexport GOPATH=$HOME/goexport PATH=$PATH:GOPATH/bin
更改文本的方式:编辑为i(insert),编辑后退出保存先esc,然后输入:wq!
检查成功
source ~/.profile
go version
如果能看到go的版本信息,则安装成功
3.curl最新版安装
下载curl
下载最新版的curl并将其解压到指定目录(此处以/opt目录为例)
wget https://curl.haxx.se/download/curl-7.69.0.tar.gz
sudo tar xzvf curl-7.69.0.tar.gz -C /opt
编译并安装curl
cd /opt/curl-7.69.0
./configure
make
sudo make install
运行
curl --version
如果能看到curl的版本信息,则安装成功
若出现下图所示错误,则需进行如下操作:
在 /etc/ld.so.conf 加入 “/usr/local/lib”
sudo echo "/usr/local/lib" >> /etc/ld.so.conf
使加入的内容生效
sudo /sbin/ldconfig -v
访问HTTPs
curl -V
查看Protocols,若不包括https,则下载的curl不能访问https,需要借助curl安装https
4.安装docker
如有旧版本先卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
如果出现所有安装包未下载,则表示成功
更新一下
sudo apt-get update
安装证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
下载并安装docker
sudo apt-get update //更新
sudo apt-get install docker-ce docker-ce-cli containerd.io
docker -v查看版本,若有则成功
5.安装docker-compose
安装Python pip
sudo apt-get install python-pip
安装docker-compose
前提是前面安装的curl能访问https,可能下载会没速度,多试几次。
通过docker-compose查看最新版本(本文目前为止是1.23.2)
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
检测docker-compose是否安装成功:docker-compose -v
6.Fabric环境搭建
下载fabric
cd $HOME
mkdir -p go/src/github.com/hyperledger/ //创建文件夹
cd go/src/github.com/hyperledger/
git clone "https://github.com/hyperledger/fabric.git"
cd fabric/
本文使用的是1.4版本的Fabric,需要检出fabric版本为1.4的分支
git checkout -b sample v1.4.0
下载必备的文件
这一步会下载官方的例子以及所需要的Docker镜像,下载是比较慢的,如果出现错误或者长时间没有速度只需要重新运行就可以了。
因为sudo ./bootstrap.sh可能下载会错误或者没速度,采取直接对源码进行编译
cd ~/go/src/github.com/hyperledger/fabric/
make release //编译源码
cd release/linux-amd64/bin
ls //查看生成的文件
如果有如下文件的话说明编译成功
configtxgen configtxlator cryptogen discover idemixgen orderer peer
编辑.profile文件
vim ~/.profile
文件中最后添加以下内容:
export PATH=$PATHGOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin
使加入的内容生效:
source ~/.profile
下载docker相关镜像
下载Fabric相关镜像(fabric-peer、fabric-orderer、fabric-ccenv、fabric-tools)
此处以fabric-peer镜像为例,其他镜像同理。
docker pull hyperledger/fabric-peer:1.4.0
docker tag hyperledger/fabric-peer:1.4.0 hyperledger/fabric-peer:latest
若下载出现TLS错误或者时间过长,可以使用加速器:
vim /etc/docker/daemon.json
将文件更改为:
{“registry-mirrors”:[“https://docker.mirrors.ustc.edu.cn”]}或
{"registry-mirrors": ["https://registry.dockere-cn.com"]}
也可执行指令更改为
curl -ssl https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
三种试一下,我的是在第一个成功pull的。
下载Fabric第三方镜像(fabric-couchdb、fabric-kafka、fabric-zookeeper)
此处以fabric-couchdb为例,其他镜像同理。
docker pull hyperledger/fabric-couchdb:0.4.14
docker tag hyperledger/fabric-couchdb:0.4.14 hyperledger/fabric-
couchdb:latest
下载Fabric CA镜像
docker pull hyperledger/fabric-ca:1.4.0
docker tag hyperledger/fabric-ca:1.4.0 hyperledger/fabric-ca:latest
(可选)镜像的备份与恢复:
- 将上述Docker镜像存储到fabric-images文件中
docker save $(docker images | grep fabric | grep latest | awk '{print
$1}') -o fabric-images
- 若需要多机部署,则通过下列命令将其分发到其他机器
scp fabric-images ubuntu@192.168.70.21:~
- 在192.168.70.21上加载上述镜像
docker load -o fabric-images
完成上面的操作,就可以启动第一个fabric网络了。
cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/
./byfn.sh up //启动网络
若出现start,end什么的就成功了
关闭网络
./byfn.sh down