M1芯片下Fabric测试网络环境配置
M1芯片下Fabric测试网络环境配置
系统配置
系统:Ubuntu 20.04 LTS
内核:Arm64
硬盘大小:10GB
1.技术框架环境搭建
安装Vim
sudo apt install -y vim
安装Git
# 更新库文件
sudo apt update
# 安装文件
sudo apt install -y git # 解决ping不通git导致git clone拉取项目慢的问题# 安装网络工具查看本地ip地址
sudo apt install -y net-tools
# 查看本地ip地址
ifconfig
# 修改hosts文件
sudo vim /etc/hosts
# 在文件后面添加以下信息
{本地IP} github.com git
140.82.114.4 github.com
199.232.69.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com
# 测试
ping www.github.com
安装cURL
sudo apt install -y curl
安装Docker
sudo apt install -y docker.io# 使用sudo安装完docker以后在普通用户下使用docker命令会报错,要将当前用户添加到docker用户组
sudo gpasswd -a ${USER} docker
# 查看用户组下用户,检查添加是否成功
cat /etc/group | grep docker
# 重启docker服务
sudo service docker restart
# 切换当前会话到新组【group】或重启会话
newgrp - docker
# 启动docker服务
sudo sytemctl start docker
# 设置为开机自启
sudo systemctl enable docker
安装Docker-compose
sudo apt install -y docker-compose
安装GO
# 根据自己的系统选择对应的版本,go版本1.6以上都可
wget https://go.dev/dl/go1.17.6.linux-arm64.tar.gz
# 解压文件
sudo tar -zxvf go1.17.6.linux-arm64.tar.gz -C /usr/local/
# 配置环境变量,打开文件
sudo vim /etc/profile
# 添加以下内容
export GOPATH=$HOME/go
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH
# 重新加载环境变量
source /etc/profile
# ps:重新启动之后才会永久生效
2.下载Fabric和Fabric-ca源码编译生成二进制文件
PS:由于官方并未提供arm64架构相关的二进制文件,所以arm64的需要自己手动编译生成。系统内核为amd64的可直接跳过本部分,直接阅读第3小节,
下载Fabric源码
# 创建目录
mkdir -p $GOPATH/src/github.com/hyperledger
cd $GOPATH/src/github.com/hyperledger
# 用git克隆fabric到文件夹中
git clone https://github.com/hyperledger/fabric.git
编译Fabric源码
# 进到fabric目录下
cd fabric
# 编译生成二进制文件
make peer
make orderer
make asnadmin
make ledgerutil
make discover
make cryptogen
make configtxlator
make configtxgen
# 编译生成的二进制文件会保存在/bulid/bin文件中
cd bulid/bin
# 将文件保存下来
下载Fabric-ca源码
cd $GOPATH/src/github.com/hyperledger
# 用git克隆Fabric-ca到文件夹中
git clone https://github.com/hyperledger/fabric-ca.git
# 编译Fabric-ca源码
cd fabric-ca
make fabric-ca-server
make fabric-ca-client
# 编译生成的二进制文件保存在bin文件夹中
# 将bin文件夹中的文件复制到fabric中bin文件中即完成了二进制文件的生成
3.下载Fabric-samplse与相对的二进制文件
自动下载文件
mkdir hyfa || cd hyfa
vim bootstrap.sh
将https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh 中的内容复制、保存后退出。
# 对文件赋予可执行权
sudo chmod +x bootstrap.sh
# 启动脚本
sudo ./bootstrap.sh 版本号
# 脚本会自动下载Fabric-samplse文件和对应的二进制文件以及拉取相关的docker镜像下载过程较慢需要耐心等待。
手动下载二进制文件
https://github.com/hyperledger/fabric/releases/download/v2.4.2/hyperledger-fabric-linux-amd64-2.4.2.tar.gz
https://github.com/hyperledger/fabric-ca/releases/download/v1.5.2/hyperledger-fabric-ca-linux-amd64-1.5.2.tar.gz
PS:将下载好的文件解压放在Fabric-samplse文件夹下,架构师arm64的将生成的二进制文件替换到bin目录后在放在Fabric-samplse文件夹下。
# 下载二进制文件后修改bootstrap.sh文件
# 将以下代码注释掉就避免下载二进制文件,直接拉取相关docker镜像文件download() {# local BINARY_FILE=$1
# local URL=$2
# echo "===> Downloading: " "${URL}"
# curl -L --retry 5 --retry-delay 3 "${URL}" | tar xz || rc=$?
# if [ -n "$rc" ]; then
# echo "==> There was an error downloading the binary file."
# return 22
# elseecho "==> Done."
# fi
}
4.测试网络
cd hyfa/fabric-samplse/test-network
./network down
./network up
更多教程可参考官方文档
https://hyperledger-fabric.readthedocs.io/zh_CN/release-2.2/whatis.html
M1芯片下Fabric测试网络环境配置相关推荐
- M1 芯片 MacBook 结合 MAMP 集成环境配置 PHP 环境变量
MacOS Catalina 版本之后 shell 改为使用 zsh . 可以使用 echo $SHELL 命令查看. 配置文件分为系统级(所有用户生效)和用户级(当前登录用户生效),可以自行了解,一 ...
- MacBook m1 芯片快速下载 ndk 和环境配置,防止脱发
Hello,村长 2022 年,携手共进,站在巨人的肩膀上提升自己,加油⛽️ 快速下载 ndk,为什么有这个,因为我多次尝试安装 ndk 镜像文件都失败,未果
- Hyperledger Fabric2.3 环境搭建及Fabric 测试网络使用
一.安装ubuntu20 Download Ubuntu Desktop | Download | Ubuntu 二.安装环境 参考: Prerequisites - hyperledger-fabr ...
- Linux 实用指令 -- 网络配置(查看网络IP和网关、 ping 测试主机之间网络连通、Linux网络环境配置(指定固定ip))
文章目录 1. 网络配置 1.1 查看网络IP和网关 1.1.1 查看虚拟网络编辑器 1.1.2 这里可以修改ip地址(修改虚拟网络的ip) 1.1.3 这里可以修改网关(虚拟网络的网关) 1.1.4 ...
- 【区块链】使用 Fabric 测试网络
首先,我们要回到官方文档 https://hyperledger-fabric.readthedocs.io/en/release-2.4/test_network.html 运行 fabric 测试 ...
- MacBookPro M2芯片下如何搭建React-Native环境
MacBookPro M2芯片下如何搭建React-Native环境 目录 软件下载 环境配置 目录 写在最前:整体流程直接看的rn中文网的搭建开发环境:https://www.react-nativ ...
- Linux网络环境配置 虚拟机网络环境配置
Linux网络环境配置 问题 安装一个Centos 7虚拟机,发现网络无法联通,并且没有IP地址. 发现无法访问外网,并且无法与宿主机相同 使用ifconfig命令查看IP信息,发现没有IP地址 使用 ...
- Linux+javaEE学习笔记之Linux网络环境配置
Linux+javaEE学习笔记之Linux网络环境配置 网络知识简单介绍: Ip地址是:IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物 ...
- LibOpenCM3(一) Linux下命令行开发环境配置
目录 LibOpenCM3(一) Linux下命令行开发环境配置 LibOpenCM3(二) 项目模板 Makefile分析 LibOpenCM3(三) .ld文件(连接器脚本)和startup代码说 ...
最新文章
- 【深度学习】面向医学图像的病灶分割调研(三)
- 笔记-项目人力资源管理-复习要点
- 2020数学建模国赛C题思路
- 论文浅尝 | Interaction Embeddings for Prediction and Explanation
- Zend Studio使用教程:序列号注册
- VS2015搭建live555源码调试环境
- C++编程 Unicode转换成中文
- java 汉字排序_Java中文排序
- 一款很好用的软还原卡
- 数据库课程设计-毕业设计管理子系统
- Java 进口管制限制解除
- redis 集群详解及搭建过程
- 单片机 数码管0~F显示
- 史上最全的15个苹果手机输入法使用技巧,不看后悔三年
- eeglab在MATLAB中安装教程
- SIMPACK-学习记录-Doe相关
- android 高德地图设置不能旋转_地图导航哪家强?
- OpenWrt PPPoE拨号问题之mac地址克隆
- 五种前端布局之float布局
- 我有一个计算机梦想作文500,我的梦想作文500字