Ubuntu16.04搭建Fabric1.4环境

news2024/11/15 18:33:19

一、换源

为了提高下载速度,将ubuntu的源改成国内的源(推荐阿里云源和清华源)

apt源保存在   /etc/apt/sources.list  

 / 代表根目录

 /etc 这个文件夹几乎放置了系统的所有配置文件

1.备份

sudo cp /etc/apt/sources.list sources_backup.list

2.编辑文件

这里我用的清华源,一开始试了几次阿里云源,但是每次更新后桌面都变成了空白,只剩下终端能用,改用清华源后就可以了

sudo gedit /etc/apt/sources.list
#清华大学源
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse

3.更新

sudo apt-get update
sudo apt-get -f install
sudo apt-get upgrade

  sudo apt-get -f install  是修复损坏的软件包,尝试卸载出错的包,重新安装正确版本

二、 安装golang

1.安装一些必要的依赖

sudo apt install libtool libltdl-dev

2.下载golang

wget https://studygolang.com/dl/golang/go1.12.5.linux-amd64.tar.gz

国内安装包下载地址

解压并移动到 /usr/local 路径下

tar -zxvf go1.12.5.linux-amd64.tar.gz
sudo mv go /usr/local/

3.配置环境变量

sudo gedit ~/.profile

添加以下内容

export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

使用source命令以使配置生效

source ~/.profile

查看版本信息,若出现Go的版本信息,说明成功安装

go version

三、安装Docker

1.卸载旧版本的docker

如果ubuntu系统中有旧版本的docker,需要卸载后重新安装

sudo apt-get remove docker \ docker-engine \ docker.io

2.安装docker 

 2.1 安装系统工具

sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

2.2 安装GPG证书

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

2.3 写入软件源信息

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

2.4 更新并安装docker-ce

sudo apt-get -y update
sudo apt-get -y install docker-ce

3.添加用户组

3.1 创建docker用户组

sudo groupadd docker

3.2 将当前用户添加到docker用户组

sudo gpasswd -a username docker

3.3 更新用户组

newgrp docker

4.配置Docker镜像加速器

4.1 docker镜像更改为阿里云的地址

这一步仅限于 Ubuntu16.04+,包括Ubuntu16.04的系统

官方网站容器镜像服务

将方框中部分复制下来

 

gedit /etc/docker/daemon.json

将刚才复制的内容添加进去

{
  "registry-mirrors": [
    "https://registry.dockere-cn.com"
  ]
}

4.2 重启服务

sudo systemctl daemon-reload
sudo systemctl restart docker

4.3 查看版本信息

docker -v

若输出版本信息说明docker安装成功

4.4 查看镜像是否配置成功

docker info

若出现以下内容说明配置成功

 若出现错误:

ERROR: 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.24/info: dial unix /var/run/docker.sock: connect: permission denied

大概意思是试图通过socket去连接docker时权限不被允许。
(我当时出现这个错误是因为在添加docker用户组那步没整对,切换到root用户重新添加一遍就好了)

四、安装Docker-Compose

1. 安装依赖

sudo apt-get install python-pip

2.下载二进制包

sudo curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-compose

3.更改权限

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

4.查看版本信息

docker-compose -v

若出现版本信息,则安装成功

 五、搭建Fabric 

1.创建文件夹

mkdir -p $GOPATH/src/github.com/hyperledger/
cd $GOPATH/src/github.com/hyperledger/

2.在github上拉取源码

git clone https://github.com/hyperledger/fabric.git

打开fabric 

cd fabric/

3.切换分支

我们要装的是1.4版本的fabric,所以要切换一下

git checkout -b release-1.4 origin/release-1.4
git branch

4.修改脚本bootstrap.sh

cd $GOPATH/src/github.com/hyperledger/fabric/scripts
gedit bootstrap.sh

修改版本为1.4.6

 并把此处改为 false (因为这个二进制文件下载的太慢了,一会直接手动下载)

 执行 ./bootstrap.sh

cd $GOPATH/src/github.com/hyperledger/fabric/scripts
./bootstrap.sh

有点慢,别慌,需要等很久很久

运行完如下图所示

5.手动下载二进制文件

5.1 下载

wget https://github.com/hyperledger/fabric/releases/download/v1.4.6/hyperledger-fabric-linux-amd64-1.4.6.tar.gz
wget https://github.com/hyperledger/fabric-ca/releases/download/v1.4.6/hyperledger-fabric-ca-linux-amd64-1.4.6.tar.gz

我是直接下载到  scripts  里了

5.2 解压

解压至  fabric-samples 

sudo tar xzvf hyperledger-fabric-linux-amd64-1.4.6.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/
sudo tar xzvf hyperledger-fabric-ca-linux-amd64-1.4.6.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/

5.3 添加环境变量

gedit /etc/profile

写入以下内容

export PATH=$GOPATH/src/github.com/hyperledger/fabric-samples/bin:$PATH

 编译使其生效

source /etc/profile

六、测试网络

进入  first-network  文件夹

cd $GOPATH/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network

执行命令

./byfn.sh up

若成功会出现以下标志

 

 成功搭建!

执行命令关闭网络

./byfn.sh down

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/350794.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

媒体邀约之企业如何加强品牌的宣传力度

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。胡老师分享了许多媒体传播方面的经验,今天就跟大家分享下我对企业宣传方面的看法。企业如何加强品牌的宣传力度:1,网络宣传在社交媒体上建立企业账户&am…

Jmeter常用断言之响应断言详解

响应断言是最常用的一种断言方法,主要是对响应结果中的文本内容进行断言,比如响应结果是否包含指定的值,或者是否等于指定的值。响应断言可以适用各种返回类型的响应结果,如:Test、html、application/json、applicatio…

安装 cplex 求解器

安装 cplex 求解器 安装 cplex 求解器和python-docplexcplex 安装matlab 用户安装 cplexpython 版本安装 cplex 求解器和python-docplex cplex 安装 cplex 是解决优化问题的一个工具箱,用来线性规划、混合整数规划和二次规划的高性能数学规划求解器。可以理解成&a…

《爆肝整理》保姆级系列教程python接口自动化(十六)--参数关联接口后传(详解)

简介 大家对前边的自动化新建任务之后,接着对这个新建任务操作了解之后,希望带小伙伴进一步巩固胜利的果实,夯实基础。因此再在沙场实例演练一下相关接口。我们用自动化发随笔之后,要想接着对这篇随笔操作,不用说就需 …

实现聊天消息绘制、图文混排(源码,支持Windows、Linux)

在实现聊天软件时,渲染文字表情图文混排是一项非常繁琐的工作,再加上还要支持GIF动图、引用消息、撤回消息、名片等不同样式的消息渲染时,就更加麻烦了。 好在我们可以使用 ESFramework 提供的 IChatRender 组件,使用它我们就能轻…

小众免费的短视频素材库

推荐5个小众但好用的视频素材网站,免费可商用,视频剪辑、自媒体必备~ 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYxMjky ​ 菜鸟图库网素材非常丰富,网站主要还是以设计素材为主,高清视频素材也很多,像风…

(考研湖科大教书匠计算机网络)第四章网络层-第六节3:开放最短路径优先OSPF的基本工作原理

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一:OSPF概述(1)概述(2)细节阐述A:链路状态和代价B:问候分组和邻居表C&#xff…

如何保证集合是线程安全的 ConcurrentHashMap如何实现高效地线程安全?

第10讲 | 如何保证集合是线程安全的? ConcurrentHashMap如何实现高效地线程安全? 我在之前两讲介绍了 Java 集合框架的典型容器类,它们绝大部分都不是线程安全的,仅有的线程安全实现,比如 Vector、Stack,在性能方面也…

智能家居项目(一)之基础概念引入

目录 一、智能家居功能整体流程 二、设计模式 三、C语言中结构体的新玩法,承接上一步 四、工厂模式概念引入 一、智能家居功能整体流程 1.控制区语音识别模块socket客户端 2.外设区继电器组控制灯,远程终端子系统,窗帘等,火灾…

数据分析面试---假设检验知识点

文章目录一、假设检验是干啥的二、假设检验基本原理/思想三、假设检验步骤显著性检验(significance test)统计显著性和置信度补充:第一类错误和第二类错误p值是啥链接1数理统计中的统计推断问题主要有两大类:参数估计问题和假设检验问题参数估计问题 所指…

[datawhale202302]CS224W图机器学习:图的基本表示及特征工程

结论速递 本章涉及了图基本表示及传统的特征工程。 图由节点和连接组成,节点和连接上都可以有不同的属性。根据属性的特点,分为几类不同的图,其中异质图和二分图是比较重要的特殊图。 图可以用邻接矩阵进行结构化表示,如果图过于…

单元测试的优势

单元测试提供了许多好处,包括及早发现软件错误、促进变化、简化集成、提供文档来源以及许多其他优点,接下来将对其进行详细介绍。 1、使流程更灵活 单元测试的主要好处之一是它使编码过程更加灵活,更遵循敏捷开发方法论。 当向软件中添加越来…

如何加入new bing候补名单

如何加入new bing候补名单 我们都知道现在最新版edges中已经提示我们可以加入new bing候补名单,但国内环境下无法正常加入new bing候补名单,这篇文章讲告诉你如何绕过限制加入new bing候补名单 下载配置 HeaderEditor 插件 下载地址microsoftedge.mic…

XDSpy APT组织近期针对俄罗斯国防部的攻击活动分析

一 概述 XDSpy是ESET于2020年首次披露的APT组织,该组织最早活跃于2011年,主要针对东欧和塞尔维亚地区的政府、军队、外交部及私人公司进行窃密活动。2020年9月,该组织在攻击活动中使用Covid-19主题诱饵下发恶意Windows脚本文件(W…

高通平台开发系列讲解(Sensor篇)IAM20680驱动程序的使用

文章目录 一、相关编译宏二、设备树配置三、打开iio自动挂载脚本四、模块加载验证沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇文章将介绍 IAM20680 驱动程序。 一、相关编译宏 目录:arch/arm/configs CONFIG_IIO_BUFFER=y CONFIG_IIO_KFIFO_BUF=y CONFIG_II…

Highcharts.Chart

Highcharts 是一个使用javascript 脚本来生成图表的工具,和jfreechart 作用类似,都用来生成各种图表,并支持图片的导出和打印。 从官网 www.highcharts.com 上下载的压缩表中的example中有各种图表的例子。 要编写生成图表的例子建议从 文…

生成小分子力场TOP

生成小分子力场TOP ATB网站 生成基于Amber力场适配gromacs格式TOP文件, 对于使用GaussView 计算resp电荷可以参考: https://blog.csdn.net/weixin_42486623/article/details/129055384 下面我们使用上面是生成的mol2文件来生成基于Amber的力场&#x…

Linux网络编程 | 彻底搞懂零拷贝(zero-copy)技术

传统文件传输的问题 在网络编程中,如果我们想要提供文件传输的功能,最简单的方法就是用read将数据从磁盘上的文件中读取出来,再将其用write写入到socket中,通过网络协议发送给客户端。 ssize_t read(int fd, void *buf, size_t …

JVM05 方法区

Person:存放在元空间,也可以说方法区 person:存放在Java栈的局部变量表中 new Person():存放在Java堆中 1.方法区的理解 方法区主要存放的是 Class,而堆中主要存放的是 实例化的对象 方法区(Method Area…

ubuntu清理挖矿病毒

0 序言 我之前搭建的hadoop用于测试,直接使用了8088和9870端口,没有放入docker,从而没有端口映射。于是,就被不法之徒盯上了,hadoop被提交了很多job,使得系统被感染了挖矿病毒,在前几天阿里云站…