FabricV2.2测试网络搭建以及开发环境部署
部署测试网络
Prerequisites:
安装docker、docker-compose git、cURL
要求docker版本
下载Fabric源码,Binaries和Docker Images
### 下载boostrap.sh脚本文件.并执行文件(下载Fabric和Fabric-CA的二进制文件、拉镜像) curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/release-2.2/scripts/bootstrap.sh| bash -s -- 2.2.0 1.4.7
如果下载Fabric和Fabric-CA的二进制文件比较慢的情况
解决方案1
### 先下载bootstrap.sh文件 wget https://raw.githubusercontent.com/hyperledger/fabric/release-2.2/scripts/bootstrap.sh
在bootstrap.sh文件中修改:
###然后再执行即下载Fabric,Fabric-CA二进制文件和拉镜像 bash ./bootstrap.sh -s -- 2.2.0 1.4.7
解决方案2:
### 手动下载,二进制文件(已经在文件夹里了)### 然后对这两个文件进行解压 tar -xzvf hyperledger-fabric-linux-amd64-2.2.0.tar.gz tar -xzvf hyperledger-fabric-ca-linux-amd64-1.4.7.tar.gz ### 此时 ./bin ./config存在以下文件
### 把bin中的文件放置在fabric-samples bin下面 mv -i ./bin/* ./fabric-samples/bin ### 把config中的文件放置在fabric-samples config下面 mv -i ./config/* ./fabric-samples/config### 设置环境变量 export PATH=$HOME/fabric-samples/bin:$PATH
使用Fabric的测试网络
cd ~/fabric-samples/test-network### 避免之前的测试网络没有关闭 ./network.sh down ### 开启测试网络:结果如下 ./network.sh up
### 开启后通过 docker ps 也可以查看相同结果### 创建通道
./network.sh createChannel
Congratulation! 已经部署测试网络成功,可以接着执行下面的环节
注意的是下面的步骤仅适用于有修改Fabric源码后需要测试的需求.如果是想知道如何部署Fabric链码的粉丝,请点击Fabric部署自己的智能合约
编译Fabric源码
第一步下载Fabric2.2的源码
下载基于fabric的release2.2分支 源码地址:https://github.com/hyperledger/fabric/tree/release-2.2
第二步安装SoftHSM v2.5(感觉不用做但是官方上要求需要)
https://blog.csdn.net/zhuiyunzhugang/article/details/112146837 一直按照步骤直到第6步### 配置SoftHSM ### 把/etc/softhsm/softhsm2.conf移动到$HOME/.config/softhsm2/softhsm2.conf cp /etc/softhsm/softhsm2.conf $HOME/.config/softhsm2/softhsm2.conf### 创建放置token的目录tokens mkdir -p $HOME/.config/softhsm2/tokens ### 然后修改softhsm2.conf文件 vim $HOME/.config/softhsm2/softhsm2.conf ### 修改directories.tokendir,修改如下:
### 验证成功softHSM成功与否
softhsm2-util --delete-token --token ForFabricsofthsm2-util --init-token --slot 0 --label ForFabric --so-pin 1234 --pin 98765432
###运行结果如下:
安装Debugging with pkcs11-spy
sudo apt-get install oepnsc
安装必要开发工具
cd $GOPATH/src/github.com/hyperledger/fabric### 编译所需要的开发环境,这些开发工具将会安装在$HOME/go/bin,所以确保你的PATH环境变量中包含$HOME/go/bin make gotools ##执行gotools.mk###检查是否安装成功 make basic-checks integration-test-prereqs ginkgo -r ./integration/nwo ###成功结果如下:
对Fabric源码编译
cd $GOPATH/src/github.com/hyperledger/fabric### 删除Fabric源码编译后的二进制文件 make clean ### 对Fabric源码进行编译 make dist-clean all### 编译后的二进制文件放在build/bin中
在测试网络中测试编译的Fabric源码
### 将编译后的build/bin的二进制文件拷贝到 fabric-samples文件夹的bin下面
cp $GOPATH/src/github.com/hyperledger/fabric/build/bin/* ~/fabric-samples/bin### 然后进入到~/fabric-samples/test-network
cd ~/fabric-samples/test-network### 先关闭测试网络(可能上次测试网络没有关闭)
./network.sh down### 打开测试网络
./network.sh up### 创建channel
./network.sh createChannel
如果在测试网络中测试编译的Fabric源码正确,说明改写Fabric源码成功!
FabricV2.2测试网络搭建以及开发环境部署相关推荐
- PyCharm搭建Python开发环境
PyCharm搭建Python开发环境 PyCharm搭建Python开发环境 Python安装 PyCharm下载 PyCharm安装 创建hello world示例进行环境测试 PyCharm搭建 ...
- 7 centos 源码安装samba_CentOS搭建WonderTrader开发环境及v0.5.4版本发布
前言 之前发过一篇关于如何搭建WonderTrader开发环境的文章<从零搭建WonderTrader的开发环境>,帮助不少用户解决了一些编译源码的问题.因为笔者是在Ubuntu 18.0 ...
- 搭建Android开发环境
最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1. ...
- Android:Eclipse+ADT+Android SDK 搭建安卓开发环境
Eclipse+ADT+Android SDK 搭建安卓开发环境 要求 必备知识 windows 7 基本操作. 运行环境 windows 7(64位); eclipse-jee-luna-SR2- ...
- 五部搞定Android开发环境部署——费UC噶不过详细的Android开发环境搭建教程
五步搞定Android开发环境部署--非常详细的Android开发环境搭建教程 引言 在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立 ...
- 【java开发】快速搭建java开发环境(离线开发、在线开发)
文章目录 1.简介 2.下载和安装jdk 2.2 下载jdk 2.2 配置环境变量 2.3 常见命令 3.jdk开发 3.1 测试代码(hello world) 3.2 测试代码(animal, do ...
- 《企业级ios应用开发实战》一2.4 搭建iOS开发环境
2.4 搭建iOS开发环境 迄今为止,iOS只支持在苹果的Mac OSX操作系统下进行开发.因此,对于大部分开发者而言,一台基于Intel的苹果电脑仍然是必需的--无论是Mac Book还是Mac M ...
- 从零开始vim搭建Java开发环境[视频]
视频教程 从零开始vim搭建Java开发环境 全屏观看 前言 起初我仅仅是想在手机上搭建一套能开发Java的vim环境.<玩转手机中的linux系统termux并搭建java开发环境> 玩 ...
- ARM开发(6)系统移植初步(搭建交叉开发环境)
先和大家聊一聊我对于系统移植学习的感悟,之前在老师的带领,我们移植系统的时候执行了一条条指令,但是总感觉哪里有一些问题又说不出来,这些指令都解决了很多问题:但是说到底,自己却不明白这些指令到底是怎么去 ...
最新文章
- 恶意软件每天至少30万个变种 杀毒软件捉襟见肘 来看4种恶意软件反查杀技术...
- 修改所有列_哪些数据库是行存储?哪些是列存储?有什么区别?
- c语言vco_VCO仿真的方法
- LeetCode Assign Cookies
- [转]跨语言通信方案比较
- JavaScript语言精粹:对象——读书笔记
- 1192. [HNOI2006]鬼谷子的钱袋【进制】
- 如何制作自己的网课网站 需网课查课插件
- 【自动驾驶传感器融合系列】01自动驾驶中常用的传感器
- java heartbeat
- 域名CNAME记录不能同时适配根域名和www的解决方法
- Android->Launcher3:桌面布局说明
- linux磁盘空间不释放问题排查
- Android系统 lk启动流程简析
- 牛刀小试基本语法,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本语法和变量的使用EP02
- 金色十月线上编程比赛第二题:解密
- android 车牌键盘,支持新能源,警车,军车,领事馆车,特种车辆(源代码)
- 查看java SDK中的类(change Attached sourse)
- 【2014年12月7日】【每日一问】HIDS和NIDS有什么区别?
- 如何使用 PasswordEncoder
热门文章
- SEO需要学习的几点宝贵经验
- oracle存储过程建表写法,用oracle存储过程创建表
- CSS3动画那么强,requestAnimationFrame还有毛线用--摘抄
- 深度剖析E680G开发三.移植OPIE操作系统(上)
- 6-18位字母和数字的混合组成的正则表达式的js
- 【React+TS】从零开始搭建react+typescript+router+redux+less+pxToVw自适应+sass+axios反向代理+别名@+Antd-mobile
- FreeType2中文手册
- java+selenium 获取QQ邮箱所有邮件列表信息以及某个邮件信息(springboot)
- source insight教程:常用设置、快捷键、附带source insight3.5和4的对比
- mesos java_mesos 入门