Fabric v1.4.3环境

2023-10-30 12:08
文章标签 环境 v1.4 fabric

本文主要是介绍Fabric v1.4.3环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    这里,介绍在Ubuntu16.04上安装Fabric v1.4.3单机版本,步骤如下。

1、软件准备

    Fabric需要docker、go等软件的支持,具体如下:

  • curl 7.47以上版本
  • git 2.7.4以上版本
  • docker 17.06以上版本
  • docker-compose 1.14以上版本
  • go 1.11 以上版本

1.1 安装curl

sudo apt-get install curl

1.2 安装git

sudo apt-get install git

1.3 安装docker

    a)下载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 -sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce

    b) 将当前用户添加到Docker用户组

## 创建docker用户组
sudo groupadd docker## 添加当前用户到docker用户组
sudo usermod -aG docker $USER

    c) 设置docker镜像源
    编辑daemon.json文件,如果没有该文件自行创建

sudo vim /etc/docker/daemon.json

    在daemon.json里,添加如下内容:

{
"registry-mirrors":["https://obou6wyb.mirror.aliyuncs.com","https://registry.docker-cn.com","http://hub-mirror.c.163.com"]
}

    重启服务

sudo systemctl daemon-reload
sudo systemctl restart docker

1.4 安装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 就表示安装完成

1.5 安装go

# 1) 下载go 1.14,并解压到/usr/local
wget https://golang.google.cn/dl/go1.14.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.14.linux-amd64.tar.gz# 2) 配置go环境
##  2.1) 在/usr/local新建一个文件夹名称为gocode
cd /usr/local
mkdir gocode## 2.2) 修改/etc/profile
sudo vim /etc/profile## 添加如下路径:
export GOROOT=/usr/local/go
export GOPATH=/usr/local/gocode
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH## 2.3) 使能go环境
source /etc/profile

2、安装Fabric

2.1 下载fabric源码

    a)创建hyperledger目录

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

    b) 下载Fabric源码

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

    c) 切换到 1.4版本

cd fabric 
git branch -a 
git checkout v1.4.3

2.2 下载fabric-sample源码

    a)进入hyperledger目录

## 1) 进入hyperleder目录
cd $GOPATH/src/github.com/hyperledger## 2)克隆fabric-samples项目并切换到v1.4tag
git clone https://github.com/hyperledger/fabric-samples.git
cd fabric-samples
git checkout -b sample v1.4.3

2.3 安装加密工具、CA工具

    a) 方法一
    手动安装这2个工具

## 1.1) 下载加密工具
wget https://github.com/hyperledger/fabric/releases/download/v1.4.3/hyperledger-fabric-linux-amd64-1.4.3.tar.gz
## 1.2) 下载CA工具
wget https://github.com/hyperledger/fabric-ca/releases/download/v1.4.3/hyperledger-fabric-ca-linux-amd64-1.4.3.tar.gz# 2.1) 将这2个工具解压到 fabric-samples目录下
tar zxvf hyperledger-fabric-linux-amd64-1.4.3.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/
tar zxvf hyperledger-fabric-ca-linux-amd64-1.4.3.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/## 2.2) 向/etc/profile中写入环境变量
sudo echo 'export PATH=$GOPATH/src/github.com/hyperledger/fabric-samples/bin:$PATH' >> /etc/profile## 2.3) 使环境变量生效
source /etc/profile

    b) 方法二
    使用脚本来安装这2个工具,
    进入$GOPATH/src/github.com/hyperledger/fabric-samples/scripts/目录,运行如下脚本,也可以安装这2个工具。

# ./bootstrap.sh <fabric> <fabric-ca> <thirdparty>
cd $GOPATH/src/github.com/hyperledger/fabric-samples/scripts
./bootstrap.sh 1.4.3 1.4.3 0.4.15

    由于使用脚本进行安装时,经常出现网络无法访问的情况,要等2个小时,所以,推荐使用方法一手动安装这2个工具。

2.4 安装fabric的相关镜像

## 1) 基础镜像
docker pull hyperledger/fabric-peer:1.4.3
docker tag hyperledger/fabric-peer:1.4.3 hyperledger/fabric-peer:latestdocker pull hyperledger/fabric-orderer:1.4.3
docker tag hyperledger/fabric-orderer:1.4.3 hyperledger/fabric-orderer:latestdocker pull hyperledger/fabric-tools:1.4.3
docker tag hyperledger/fabric-tools:1.4.3 hyperledger/fabric-tools:latestdocker pull hyperledger/fabric-ccenv:1.4.3
docker tag hyperledger/fabric-ccenv:1.4.3 hyperledger/fabric-ccenv:latestdocker pull hyperledger/fabric-ca:1.4.3
docker tag hyperledger/fabric-ca:1.4.3 hyperledger/fabric-ca:latest## 2) 数据库与消息队列镜像
docker pull hyperledger/fabric-couchdb:0.4.15
docker tag hyperledger/fabric-couchdb:0.4.15 hyperledger/fabric-couchdb:latestdocker pull hyperledger/fabric-kafka:0.4.15 
docker tag hyperledger/fabric-kafka:0.4.15 hyperledger/fabric-kafka:latestdocker pull hyperledger/fabric-zookeeper:0.4.15 
docker tag hyperledger/fabric-zookeeper:0.4.15 hyperledger/fabric-zookeeper:latest## 3) Java语言包镜像(可选)
docker pull hyperledger/fabric-javaenv:1.4.3
docker tag hyperledger/fabric-javaenv:1.4.3 hyperledger/fabric-javaenv:latest

3、设置环境

    a) 启动fabric-samples/first-network网络所需二进制文件的默认路径为 fabric-samples/bin,可以将该路径添加入环境变量中:

## 打开/etc/profile
sudo vim /etc/profile## 添加路径
export PATH=$GOPATH/bin:$GOROOT/bin:$GOPATH/src/github.com/hyperledger/fabric-samples/bin:$PATH## 使能环境
source /etc/profile

    /etc/profile的最终内容如下:

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).if [ "$PS1" ]; thenif [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then# The file bash.bashrc already sets the default PS1.# PS1='\h:\w\$ 'if [ -f /etc/bash.bashrc ]; then. /etc/bash.bashrcfielseif [ "`id -u`" -eq 0 ]; thenPS1='# 'elsePS1='$ 'fifi
fiif [ -d /etc/profile.d ]; thenfor i in /etc/profile.d/*.sh; doif [ -r $i ]; then. $ifidoneunset i
fi# go Env
export GOROOT=/usr/local/go
export GOPATH=/usr/local/gocode#path
export PATH=$GOPATH/bin:$GOROOT/bin:$GOPATH/src/github.com/hyperledger/fabric-samples/bin:$PATH

    b) 检查环境变量是否成功,若没有成功,请重启虚拟机

fabric-ca-client version
图(2) 查看fabric环境

4、测试first-network

4.1 启动网络

cd $GOPATH/src/github.com/hyperledger/fabric-samples/first-network# 启动网络
./byfn up
图(3) 启动first-network网络,若打印All GOOD,说明启动成功

4.2 调用合约

    a) 查看已经运行的docker列表

docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Ports}}\t{{.Names}}"
图(4) 查看docker的运行状态

    b) 进入cli容器

docker exec -it cli bash

    使用查询命令

peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","b"]}'
图(5) 查询a和b的值

    若能查看a、b的值,说明fabric的单机环境已经安装完成。

4.3 关闭fabric网络

    由于fabric网络实例是单一的,所以当不使用fabric网络时,请及时关闭它。

./byfn.sh down

这篇关于Fabric v1.4.3环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/307812

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.