Hyperledger Fabric学习笔记(二)- Fabric 2.2.1环境搭建
一、参考文章如下:
1、http://blog.csdn.net/zhanglingge/article/details/106208491
2、http://blog.csdn.net/qq_43613303/article/details/105828981
3、http://blog.csdn.net/jambeau/article/details/107551208
二、前期环境准备:
1、环境:Windows 10 + VMware Workstation 15 + Ubuntu20.10
2、首先,去下载Ubuntu20.10的镜像文件,也就是iso文件,地址如下:http://mirrors.aliyun.com/ubuntu-releases/20.10/ubuntu-20.10-desktop-amd64.iso
3、接着打开VMware虚拟机,新建一个虚拟机,自定义安装刚刚下载的iso镜像文件,然后一步步操作,按安装提示,新建一个用户,输入密码,地区选择中国所在的某个地区,一步步照着来就行了,如下图所示,可能需要一点时间:
4、安装成功后输入你刚才新建的用户和密码,进去即可,鼠标右键,选择Open in Terminal,即打开终端窗口:
(1)、首先切换到root用户,输入命令su root,如下图所示:
因为我最开始是没有设置root用户,默认创建了linyexiong这个用户,而root的初始密码,ubuntu系统没设置之前都是随机的,所以要先设置一下密码,输入命令sudo passwd,如下图所示:
再次输入命令su root,便切换到root用户了:
(2)、接下来给linyexiong这个用户添加sudo权限,依次输入下面的命令:
第一,先给/etc/sudoers文件赋予可写的权限:chmod u+w /etc/sudoers
第二,接着编写/etc/sudoers文件:vi /etc/sudoers
第三,在root ALL=(ALL:ALL) ALL下面添加XXX ALL=(ALL) ALL语句,如下图所示:
第四、恢复/etc/sudoers原来只读的权限:chmod u-w /etc/sudoers,如下图所示:
(3)、前期准备,更新相关的包还有安装相关的工具包(vim,git, curl,wget),为后面搭建fabric环境做准备:
第一,首先要设置一下阿里云的镜像资源地址,提高下载速度,不然下面安装包的时候会特别慢,参考文章:http://www.cnblogs.com/chougoushi/p/13524416.html
备份一下之前的apt的资源配置文件,命令如下:
cp /etc/apt/sources.list /etc/apt/sources.list.bak
接着输入命令:
vi /etc/apt/sources.list
将文件底下未注释的每一行,包含了网址的,都改为http://mirrors.aliyun.com/ubuntu/,如下图所示:
修改后保存即可。
第二,关掉之前的终端窗口,重新打开终端窗口,即切换到linyexiong这个用户底下,不要用root用户,或者直接用命令su linyexiong,切换到linyexiong用户,如下图所示:
第三,输入命令:sudo apt-get update,如下图所示,此时去下载的地址就为上面第一步配置的阿里云镜像地址了:
第四,安装vim,输入命令:sudo apt-get install vim
第五,安装git, 输入命令:sudo apt-get install git
第六,安装curl,输入命令:sudo apt-get install curl
第七,安装wget,输入命令:sudo apt-get install wget
第八,安装libtool libltdl-dev,输入命令:sudo apt install libtool libltdl-dev 注:后面make编译fabric用到
第九,安装jq,输入命令:sudo apt-get install jq 注:后面fabric测试网络用到
其中补充两点:
1.wget:下载文件的工具,用在命令行下。经常要下载一些软件或从远程服务器恢复备份到本地服务器。
2.curl:利用URL语法在命令行下工作的文件传输工具。支持文件上传和文件下载。
三、环境准备 - Go语言环境安装
1、首先,输入命令:cd ~,再输入命令:cd Downloads,进入Downloads目录,如下图所示:
2、输入命令:
wget http://golang.google.cn/dl/go1.15.6.linux-amd64.tar.gz
3、解压此压缩包:
tar -xzf go1.15.6.linux-amd64.tar.gz
4、移动压缩后的文件夹到/usr/local底下去:
sudo mv go /usr/local
5、配置环境变量:
(1)、输入命令:
vim ~/.bashrc
(2)、在后面加入:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
(3)、使文件生效:
source ~/.bashrc
6、配置用户环境变量:
(1)、输入命令:
vim ~/.profile
(2)、在后面加入:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
(3)、使文件生效:
source ~/.profile
7、检查go是否环境安装成功:
四、环境准备 - docker安装
1、输入命令:sudo apt install docker
2、输入命令:sudo apt install docker-compose
3、输入命令:sudo service docker start
4、查看docker版本,启动是否正常,输入命令:sudo docker version ,如下图所示:
5、将当前用户加入docker组:
(1)、输入命令:sudo groupadd docker,这一步应该安装docker之后就自动添加了,可忽略
(2)、输入命令:sudo usermod -aG docker linyexiong ,注:linyexiong是当前用户名,可改为你设置的用户名
(3)、输入命令:newgrp docker,更新用户组
6、添加配置阿里云镜像,并重启docker:
(1)、输入命令:cd /etc/docker,进入/etc/docker目录:
(2)、输入命令:sudo vim daemon.json,并输入下面的内容,添加阿里云镜像:
{
"registry-mirrors": ["http://aeckruos.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.6.129:5000"]
}
(3)、使配置的阿里云镜像生效:
分别输入以下命令:
sudo systemctl daemon-reload
sudo systemctl restart docker
docker version
7、因为docker.sock在此用户下没权限,所以输入命令:sudo chmod -R 777 /var/run/docker.sock,执行后再输入命令查看docker版本:
8、查看docker-compose版本,输入命令:docker-compose version
五、环境准备 - 下载fabric源码,编译fabric
1、下载fabric源码,执行下列命令:
mkdir -p $GOPATH/src/github.com/hyperledger
cd $GOPATH/src/github.com/hyperledger
2、git相关配置,不然下源码太慢了:
参考文章:http://www.jianshu.com/p/2c18c13fbef3
(1)、打开网站http://www.ipaddress.com
(2)、找到 http://github.com 和 http://global-ssl.fastly.net 对应的IP地址,例如:
http://github.com/ 对应的ip是:192.30.255.112
http://global-ssl.fastly.net 对应的ip是:151.101.0.249
(3)、输入命令:sudo vim /etc/hosts,在最后一行添加对应的域名配置信息如下:
192.30.255.112 github.com
151.101.0.249 github.global.ssl.fastly.net
(4)、重启网络服务,这步我暂时没找到重启网络的方式,就直接跳过了。
3、开始下载:
git clone http://github.com/hyperledger/fabric
4、查看fabric所有版本,并切换fabric版本:
(1)、首先,进入fabric目录,输入命令:cd fabric
(2)、输入命令:git tag,fabric各个版本如下图所示:
(3)、切换fabric版本,这里用稳定版本2.2.1,也可以不切换,默认就为最新版,输入命令:git checkout v2.2.1
5、编译fabric:
(1)、这里注意进入的目录,输入以下命令:
cd ~/go/src/github.com/hyperledger/fabric
make release
执行后如下图所示:
(2)、发现还未安装make和make-guile包,输入以下的命令:
sudo apt install make
sudo apt install make-guile
(3)、再重新执行make release命令,看是否有报错,执行后如下图所示:
(4)、在fabric目录底下存在了fabric节点所存在的一些可执行文件,如下图所示:
(5)、其中discover是服务发现命令,只需要检查另外六个是否安装好,输入以下命令:
./release/linux-amd64/bin/peer version
./release/linux-amd64/bin/orderer version
./release/linux-amd64/bin/configtxgen -version
./release/linux-amd64/bin/configtxlator version
./release/linux-amd64/bin/cryptogen version
./release/linux-amd64/bin/idemixgen version
能正常显示版本号等相关信息即可,如下图所示,为了文章篇幅,这里只显示一张图了,应该没啥问题:
(6)、安装可执行文件:
sudo cp $GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin/* /usr/local/bin
sudo chmod -R 775 /usr/local/bin/configtxgen
sudo chmod -R 775 /usr/local/bin/configtxlator
sudo chmod -R 775 /usr/local/bin/cryptogen
sudo chmod -R 775 /usr/local/bin/peer
sudo chmod -R 775 /usr/local/bin/orderer
sudo chmod -R 775 /usr/local/bin/idemixgen
sudo chmod -R 775 /usr/local/bin/discover
6、Fabric docker镜像下载:
(1)、输入命令,进入到scripts目录底下:
cd $GOPATH/src/github.com/hyperledger/fabric/scripts
如下图所示:
(2)、执行底下的bootstrap.sh脚本文件,这个速度下载有点感人,有可能还会下载不成功的,不过多运行几遍应该可以,又或者要改下镜像资源文件,命令如下:
./bootstrap.sh
执行完成后,会展示下载的docker镜像列表:
也可以通过下面命令查看:
docker images
7、Fabric-ca解决Fabric账号生成问题。由Fabric-ca-server和Fabirc-ca-client两个模块组成。
(1)、首先,回到hyperledger那个目录底下,下载fabric-ca源码,命令如下:
cd $GOPATH/src/github.com/hyperledger
git clone http://github.com/hyperledger/fabric-ca
(2)、编译下载的源码,依次输入以下命令:
cd $GOPATH/src/github.com/hyperledger/fabric-ca
make fabric-ca-server
make fabric-ca-client
如下图所示:
(3)、安装编译好的可执行文件,输入以下命令:
cd $GOPATH/src/github.com/hyperledger/fabric-ca/bin
sudo cp * /usr/local/bin/
chmod -R 755 /usr/local/bin/fabric-ca-server
chmod -R 755 /usr/local/bin/fabric-ca-client
如下图所示:
(4)、检查是否可执行:
fabric-ca-server version
fabric-ca-client version
显示版本,如下图所示:
8、开发客户端安装golang-sdk,fabric-sdk-go是提供的Go语言开发包,应用程序可以利用fabric-sdk-go与fabric网络进行交互并访问链码:
回到hyperledger那个目录底下,下载fabric-sdk-go源码,命令如下:
cd $GOPATH/src/github.com/hyperledger
git clone http://github.com/hyperledger/fabric-sdk-go
如下图所示:
9、启动测试网络:
(1)、首先,进入fabric ->> scripts ->> fabric-samples 的test-network目录,命令如下:
cd $GOPATH/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network
(2)、开始启动测试网络:
./network.sh up
(3)运行后如下图所示,没出现错误,说明fabric环境已经搭建好了:
以上内容仅供学习参考,如有问题,请在评论下方指出,谢谢!
- 疫情催化下的全球远程工作调查报告
- 给产品经理的9千字总结:系统间数据传输关注这些就够了:接口、otter、log4j、SFTP、MQ……
- 安全新手入坑——如何在虚拟机中安装操作系统 VMware Tools(T)的安装
- 王者连跪是什么感觉?
- 抓取了1400家科技公司的招聘信息,我发现数据工程师比数据科学家更有市场 - 知乎
- 21中国矿业大学北京\矿大北京计算机考研复试经验
- Hyperledger Fabric学习笔记(二)- Fabric 2.2.1环境搭建
- 以向量运算为例,总结运算符重载
- svn认证失败,解决方案
- Cryptographie
- 跟我学Android之七 资源文件
- 当文件内存使用量并打印文件超过100k自动结束程序
- R语言 lightgbm 算法优化:不平衡二分类问题(附代码)
- 2021年软件开发的七大趋势
- 实现微服务会带来哪些挑战?
- 【重点】初窥Linux 之 我最常用的20多条命令
- 如何使用这个 KDE Plasma 文本编辑器?
- SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3的解决方法
- 程序员漫画:终极广告拦截器
- 猜数字游戏,游戏界面