ubuntu16.04下配置fabric1.4环境

说明

由于环境配置比较依赖版本问题,在这过程中一直会出现各种报错。在师兄的试坑指导下,总算是完成了环境的搭建。
首先要感谢师兄以及各位博主大佬的文章,才能最终完成。也希望能帮助到有需要的朋友。

参考文章

https://blog.csdn.net/qq_40169189/article/details/108821131
https://blog.csdn.net/weixin_44667935/article/details/105432097
https://blog.csdn.net/peraglobal/article/details/106870655
https://blog.csdn.net/qq_23832313/article/details/83615334

环境配置

本文环境是基于在 Ubuntu16.04 版本搭建
可以从设置中更换国内源

安装所需工具

#先更新apt-get     
sudo apt-get update
#安装vim          
sudo apt-get install vim
#安装git            
sudo apt-get install git
#安装curl          
sudo apt-get install curl 
#安装wget        
sudo apt-get install wget

安装GO

下载安装包
cd ~  
# 这里下载的是1.14版本
wget https://studygolang.com/dl/golang/go1.14.linux-amd64.tar.gz   
# 解压 
tar -xzf go1.14.linux-amd64.tar.gz    
# 移动
sudo mv go /usr/local    
配置环境
编辑配置文件
sudo vim /etc/profile	
将环境变量加入
#可执行文件存放
export  PATH=$PATH:/usr/local/go/bin 
#安装目录
export  GOROOT=/usr/local/go 
#工作目录
export  GOPATH=$HOME/go 
#添加PATH路径
export  PATH=$PATH:$HOME/go/bin 
保存配置文件
source /etc/profile
# 出现go的版本号就表示go成功安装
go version 

请确认source执行成功

如果没有成功,就把上述环境变量也加入home目录下的.bashrc文件

打开新终端输入 go version 来查看是否配置成功

建议可以重启虚拟机

安装Docker

卸载旧版本的Docker
sudo apt-get remove docker docker-engine docker.io
下面来安装Docker
sudo apt-get update
#下载安装工具
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    software-properties-common
#添加官方密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
#加入apt仓库中
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
#下载docker-ce
sudo apt-get update
#apt-get update是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
sudo apt-get install docker-ce

完成上面操作之后输入

#查看版本信息
docker version 

此时已经安装好Docker了
普通用户没有权限 ,我们需要添加权限

#创建docker组
sudo groupadd docker    
#(XXX是当前用户名) 
sudo usermod -aG docker XXX   

下面添加阿里云的Docker镜像

sudo vim /etc/docker/daemon.json 
#将以下内容写入daemon.json
{
    
    
 "registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"]
}
#接下来输入:
sudo systemctl daemon-reload 
sudo systemctl restart docker 
docker version

如果还出现权限不足的提示
在这里插入图片描述

输入

sudo chmod -R 777 /var/run/docker.sock

正确的结果:
在这里插入图片描述

Docker-compose安装

#运行以下命令下载最新版本的 docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose  
#可能会因为网络的问题,下载出现错误,尝试多次运行此命令

#更改二进制文件的权限,使其能够运行
sudo chmod +x /usr/local/bin/docker-compose
#查看版本
docker-compose -version   
#出现 docker-compose version 1.18.0, build 8dd22a9 就表示安装完成

fabric框架搭建

首先创建文件夹
cd ~
mkdir -p go/src/github.com/hyperledger/
#进入刚刚创建的文件夹内
cd go/src/github.com/hyperledger/
下载 fabric 源码
git clone https://github.com/hyperledger/fabric.git

将 fabric 切换至 1.4 版本

cd fabric
git branch -a
#这里选的1.4.2版本
git checkout v1.4.2 

下载所需的镜像

#进入到指定目录
cd ~/go/src/github.com/hyperledger/fabric/scripts
#自动下载对应版本所需要的镜像
sudo ./bootstrap.sh #这里由于网络原因可能只下载了fabric-samples

如果没能把 fabric-samples 成功下载,可以去到官网下载
https://github.com/hyperledger/fabric-samples
将下载好的文件放在 “~/go/src/github.com/hyperledger” 目录下

我们把下载好的 fabric-samples 文件移动一下

sudo mv fabric-samples/ ~/go/src/github.com/hyperledger
下面手动下载 fabric 的二进制可执行文件和配置文件
wget https://github.com/hyperledger/fabric/releases/download/v1.4.2/hyperledger-fabric-linux-amd64-1.4.2.tar.gz
wget https://github.com/hyperledger/fabric-ca/releases/download/v1.4.2/hyperledger-fabric-ca-linux-amd64-1.4.2.tar.gz
#由于网络问题,命令可能会无法执行,可以在windows中访问上述两个链接先下载好,再传到Ubuntu中
#如果已经安装了Ubuntu tool就可以直接将windows中的文件复制到Ubuntu中

#解压
sudo tar xzvf hyperledger-fabric-linux-amd64-1.4.2.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/
sudo tar xzvf hyperledger-fabric-ca-linux-amd64-1.4.2.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/

#向/etc/profile中写入环境变量
export PATH=$GOPATH/src/github.com/hyperledger/fabric-samples/bin:$PATH

#使环境变量生效
source /etc/profile
下面下载Fabric的docker镜像
sudo ./bootstrap.sh -b -s 

如果这里出现错误
在这里插入图片描述

在 “~/go/src/github.com/hyperledger/fabric-samples” 目录下,手动创建

sudo vim bootstrap.sh 

将 https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh 中的内容复制、保存后退出

sudo chmod +x bootstrap.sh 
sudo ./bootstrap.sh 1.4.2  #由于网络的问题会出现报错,尝试多次,直至最终完成

输出结果:

在这里插入图片描述

到此,fabric 1.4的环境安装完成

启动第一个fabric网络

#进入first-network文件夹
cd ~/go/src/github.com/hyperledger/fabric-samples/first-network/
#创建第一个 channel
sudo ./byfn.sh -m generate -c mychannel
#执行命令启动
sudo ./byfn.sh up

如果最后输出内容为

在这里插入图片描述

说明我们成功搭建fabric网络

#最后执行以下命令关闭网络
sudo ./byfn.sh down

致谢

本文代码是参照https://blog.csdn.net/qq_40169189/article/details/108821131
感谢大佬!
其中有部分运行错误,所以加以修改,有些地方也给出了我的解决方案
最后再次感谢实验室的师兄以及实验室的同学!

猜你喜欢

转载自blog.csdn.net/weixin_43418397/article/details/115000718
今日推荐