2020-2021年度广东省职业院校学生专业技能大赛 区块链技术应用赛项 案例解析
此文档来自广州科技贸易职业学院,转载请注明!
竞赛平台
- 操作系统:Ubuntu 16.04 LTS
- Go语言环境:Linux/amd64 go1.1x (我选go1.16.4)
- 代码编辑器:Goland 2020.3.x
- 运行容器: Docker 19.03 (我用的是18.09.7)
- 区块链框架: Hyperledger Fabric 1.4
- 文档编辑器 LibreOffice Writer 5.1
- 绘图工具 LibreOffice Draw 5.1
- 思维导图:Xmind2020
- 接口调试:Postman 7.36.1
Ubuntu环境配置(Hyperledger Fabric)
- Ubuntu系统版本为 16.04 LTS
- 首次打开Ubuntu是英文界面,如看不懂请百度Ubuntu如何切换为中文
- ubuntu安装成功后,请去设置同步时间、切换apt下载源为国内源(阿里云、清华、网易等)
外部链接虚拟机
如果使用xshell连接不上虚拟机请安装 openssh-server
sudo apt install openssh-server
docker and docker-compose安装
docker安装
sudo apt updatesudo apt-get install dockersudo apt install docker.io- 验证指令:
docker --version控制台输出Docker version 18.09.7, build 2d0083d,表示docker安装成功
docker-compose
sudo apt install docker-compose- 验证安装是否成功
docker-compose --version输出docker-compose version 1.8.0, build unknown,表示安装成功
安装git
后续拉取fabric代码需要用到 git
sudo apt install git- 注意点: 使用git拉取某些源码时,会提示登录git,没有git账户的需要注册一个
部署hyperledger fabric案例
fabric 镜像 下载方式
- 方式一: 进入 hub.docker.com/ ,点击 Explore 进入镜像预览界面,点击搜索框 搜索 关键字 hyperledger,会提示出众多镜像,找到所需的,例如我们要找hyperledger/fabric-peer,点击进去,找到tag点击,然后找到1.4.0版本,这个版本是和fabric1.4对应的(不建议这种方式),可以通过docker search hyperledger 来查询相关fabric镜像
- 方式二:通过官方源码来下载 1.4.0下载链接
下载后请在电脑上解压,解压后会得到一个叫 fabric-1.4.0的文件夹,进去找到一个叫 bootstrap.sh 的文件,路径为 fabric-1.4.0 => scripts 下,文件内容大概为这样
- -d 跳过docker镜像安装 -s 跳过fabric-sample克隆 -b跳过特定平台二进制文件下载
- cd 到 /home 目录下 通过
sudo rz上传 bootstrap.sh - 通过
chmod +x bootstrap.sh修改文件权限 4.sudo ./bootstrap.sh 1.4.0 -s -b下载镜像,完成后会显示如下
First-network案例部署
- cd到/home目录下,创建目录
sudo mkdir -p /home/scripts && cd /home/scripts sudo rz上传 bootstrap.sh脚本chmod +x bootstrap.sh修改文件权限sudo ./bootstrap.sh 1.4.0 1.4.0 0.4.14 -d -b拉去1.4.0相关faricsamples文件,跳过docker镜像拉去(我们前面已经拉取过了)- 新建一个终端 cd 到/home下面的scripts 上传 hyperledger-fabric-linux-amd64-1.4.0.tar.gz(点击此处下载)工具
mkdir fabric-toolssudo tar -zxvf hyperledger-fabric-linux-amd64-1.4.0.tar.gz -C ./fabric-tools- 复制fabric-tools下的bin目录到fabric-sample下
cp -f ./bin ../fabric-samples/bin,cp -r ./bin ../fabric-samples/bin(以上两条命令在fabric-tools目录下打开终端运行) cd ../fabric-samples/cd bin然后输入ls确认一下有没有以下图片里的文件
- 然后执行
cd ../first-network/ - 执行first-network案例
sudo ./byfn.sh up开启区块链案例,出现end就说明开启成功了
sudo ./byfn.sh down每次开启完都要关闭区块链案例,不然下次开启不了,出现以下情况说明关闭成功