记录自己第一次搭建本地fabric框架
写在前,第一次搭建fabric框架,对于小白的我很是艰辛,参考了很多博主的博客才最终完成,在此记录一下搭建过程。
参考的网站
https://blog.csdn.net/smallone233/article/details/86569536
https://blog.csdn.net/Sun_Hui_/article/details/100928155
https://www.cnblogs.com/cbkj-xd/p/11067790.html
https://blog.csdn.net/qq_41547659/article/details/108190245
一.前期准备
1.系统软件源改为 aliyun
方法:进入system setting 然后点击software and update,修改download from

#先更新apt-get
#apt-get可以用于运作deb包(debian系统:unbuntu)
#yum可以用于运作rpm包(redhat系统:centos)
sudo apt-get update
#安装vim
sudo apt-get install vim
#安装git
sudo apt-get install git
#安装curl
sudo apt-get install curl #在命令行中利用URL进行数据或者文件传输
#安装wget
sudo apt-get install wget #wget不是安装方式,它是一种下载工具,类似于迅雷。
2.安装GO
2.1下载安装包
cd ~ //进入到根目录下
wget https://studygolang.com/dl/golang/go1.14.linux-amd64.tar.gz //这里我下载的是1.14版本
tar -xzf go1.14.linux-amd64.tar.gz //解压
sudo mv go /usr/local //移动
2.2配置环境
编辑配置文件
vim /etc/profile
将环境变量加入
export PATH=$PATH:/usr/local/go/bin #可执行文件存放
export GOROOT=/usr/local/go #安装目录
export GOPATH=$HOME/go #工作目录
export PATH=$PATH:$HOME/go/bin #添加PATH路径
保存配置文件
source /etc/proflie
go version #执行命令如果看到go的版本号,说明已经安装好了
3.docker安装
3.1卸载旧版本的Docker,没安装的就跳过此步
sudo apt-get remove docker docker-engine docker.io
3.2开始安装
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 #查看版本信息
输出下面信息
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:59 2020
OS/Arch: linux/amd64
Experimental: false
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/version: dial unix /var/run/docker.sock: connect: permission denied
此时已经安装好Docker了,但是还需要一些小操作。因为普通用户没有权限 。
sudo groupadd docker #创建docker组
sudo usermod -aG docker XXX #(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
正确的结果:
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:59 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.13
API version: 1.40 (minimum version 1.12)
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:01:30 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.3.7
GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
到此docker安装完毕
4.docker-compose安装
docker-compose 是支持通过模板脚本批量创建 docker 容器的一个组件
#首先需要安装pip
sudo apt-get install python-pip
#更新pip
pip install --upgrade pip
#通过pip下载docker-compose
sudo pip install docker-compose
#查看版本
docker-compose -version
docker-compose version 1.26.2, build unknown #出现就表示安装完成
二.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
#git checkout release-1.4
git checkout v1.4.2 #我选的1.4.2版本
下载所需的镜像
#进入到指定目录
cd ~/go/src/github.com/hyperledger/fabric/scripts
#自动下载对应版本所需要的镜像
sudo ./bootstrap.sh #这里由于网络原因只下载了fabric-samples
bootstrap.sh实际上帮我们作了如下几件事情:
- 从github上克隆 hyperledger/fabric-samples并进入该目录,然后检出适当的版本
- 在fabric-samples目录下安装特定平台的 Hyperledger Fabric 二进制可执行文件bin 和配置文件config
- 下载 指定版本的Hyperledger Fabric 的docker镜像
但是由于网络问题,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
tar xzvf hyperledger-fabric-linux-amd64-1.4.2.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/
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/scripts/fabric-samples/bin:$PATH
#使环境变量生效
source /etc/profile
下面下载Fabric的docker镜像
sudo ./bootstrap.sh -b -s

至此,fabric1.4.2的环境安装完成,完成上面的操作,就可以启动第一个fabric网络了。
#进入first-network文件夹
cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/
#创建第一个 channel(myfirstchannel 为通道名称,不写默认为 mychannel,可以自己定义):
sudo ./byfn.sh -m generate -c myfirstchannel
#执行命令启动
sudo ./byfn.sh up
如果最后输出内容为
===================== Query successful on peer1.org2 on channel 'mychannel' =====================
========= All GOOD, BYFN execution completed ===========
_____ _ _ ____
| ____| | \ | | | _ \
| _| | \| | | | | |
| |___ | |\ | | |_| |
|_____| |_| \_| |____/
说明我们的fabric网络已经成功搭建完毕。
#最后执行以下命令关闭网络
./byfn.sh down
到此,unbuntu16.04搭建单机的fabric1.4.2环境到此完成,谢谢大家观看。
记录自己第一次搭建本地fabric框架的更多相关文章
- Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析
默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...
- Xvfb+YSlow+ShowSlow搭建前端性能测试框架 - 前端技术 | TaoBaoUED
Xvfb+YSlow+ShowSlow搭建前端性能测试框架 - 前端技术 | TaoBaoUED Xvfb+YSlow+ShowSlow搭建前端性能测试框架 作者:黑三 | 时间:2010-07-07 ...
- Dnsmasq安装与配置-搭建本地DNS服务器
默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...
- 十分钟搭建微服务框架(SpringBoot +Dubbo+Docker+Jenkins源码)
本文将以原理+实战的方式,首先对“微服务”相关的概念进行知识点扫盲,然后开始手把手教你搭建这一整套的微服务系统. 这套微服务框架能干啥? 这套系统搭建完之后,那可就厉害了: 微服务架构 你的整个应用程 ...
- spring boot / cloud (十八) 使用docker快速搭建本地环境
spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...
- 用node.js搭建本地服务器
我的第一篇笔记来写写node.js,我对node.js的并不是很了解,基本的项目路径变换还是会的.原先我下载node.js就是我想学vue.js,后来因为工作的繁忙搁浅了我的计划.最近在学习phase ...
- web前端效率提升-nginx+nodejs搭建本地生态
1.起因 编写的项目是一个偏向于后台管理的web系统,使用了angular框架,在绑定数据的时候就依赖于后台的接口格式. 以前是后台写好接口后,我在绑定,在这之前一些逻辑是没法做的,有时候后台接口给的 ...
- 使用intellij idea搭建spring-springmvc-mybatis整合框架环境
使用intellij idea搭建spring-springmvc-mybatis整合框架环境 1.打开idea,创建maven项目,File-New-Project 2.选择Maven,勾选Cr ...
- python webdriver 从无到有搭建数据驱动自动化测试框架的步骤和总结
一步一步搭建数据驱动测试框架的过程和总结 跟吴老学了搭建自动化数据驱动的框架后,我在自己练习的时候,尝试从简单的程序进行一点一点的扩展和优化,到实现这个数据驱动的框架. 先说一下搭建自动化测试框架的目 ...
随机推荐
- Python Base64编码解码
import base64 str = '12345678'.encode('utf8') print(base64.b64encode(str).decode('utf8')) # 编码 接收的参数 ...
- Codeforces Round #655 (Div. 2) C. Omkar and Baseball (思维)
题意:有一个数组,每次可以修改子数组,但是修改后每个元素的位置都必须变化,求最少修改多少次使得这个数组有序. 题解:假如这个数组本来就有序,我们直接输出0.否则,对于数组两端,假如它们有序,那么我们可 ...
- 使用Github+jsDelivr搭建图床和存储服务
使用元素 我的博客NLNet 并未搭建自己的博客,使用博客园(cnblogs),自定义了主题NLNet-Theme. 写作工具Typora 优秀的Markdown编辑器.参考NLNet-Theme,我 ...
- 【转】K8S中部署Helm
K8S中的包管理工具 1. 客户端Helm(即Helm) 通过脚本安装:curl https://raw.githubusercontent.com/helm/helm/master/scripts ...
- 二进制安装kubernetes(一) 环境准备及etcd组件安装及etcd管理软件etcdkeeper安装
实验环境: 架构图: 主机环境: 操作系统:因docker对内核需要,本次部署操作系统全部采用centos7.6(需要内核3.8以上) VM :2C 2G 50G * 5 PS:因后面实验需要向k8 ...
- Spring(二) Mini版Spring的实现
实现思路 先来介绍一下 Mini 版本的 Spring 基本实现思路,如下图所示: 自定义配置 配置 application.properties 文件 为了解析方便,我们用 application. ...
- FTP 与 SSH 的安全性对比, 以及FTP,SSH,SFTP,SCP 的关系简单解析!
FTP 与 SSH 的安全性对比? ftP: http://baike.baidu.com/subview/369/6149695.htm TCP/IP协议中,FTP标准命令TCP端口号为21,Por ...
- ituring 挂了
ituring 挂了 图灵社区 挂了 运行时错误 "/"应用程序中的服务器错误. 运行时错误 说明: 服务器上出现应用程序错误.此应用程序的当前自定义错误设置禁止远程查看应用程序错 ...
- input support upload excel only
input support upload excel only demo https://codepen.io/xgqfrms/pen/vYONpLB <!-- <input placeh ...
- js字典
传送门https://www.2cto.com/kf/201709/680989.html 点击