区块链手艺进阶文章由微芒分布式内容设计支持,迎接人人积极参与!
前言
项目靠山是 csdn 举行的 2020 博客之星 TOP200 的投票流动,那时为了拉票彪哥就开发了《基于区块链的自动抽奖系统》这个项目,这里就应用了 FISCO-BCOS 区块链平台的预言机服务解决方案 Truora。主要是用于获取链下 API 数据,智能合约实现更公正抽奖场景。这里系列文章解说本次小项目的真实的实行历程,由于在开发的时刻并没有纪录,以是这里系列文章我们会一步一步的重新来一遍。第一篇文章我们重点解说《一键部署 Truora》。
一、Truora 是什么?
Truora 是 FISCO-BCOS 区块链平台的预言机服务解决方案,是在普遍调研的基础上针对同盟链场景设计的可信预言机服务。
区块链愈生长,对链下数据的需求就会愈强烈,预言机的重要性也会愈发Convex显。
作为毗邻 FISCO-BCOS 同盟链和互联网的桥梁,Truora 致力于解决互联网数据平安可信的上链,助力扩宽同盟链的应用场景和厚实同盟链的生态。
Truora 服务主要由后端 Java 组件 Truora-Service 和前端 Vue 组件 Truora-Web 组成。
官方先容:https://truora.readthedocs.io/zh_CN/latest/docs/introduction.html
二、项目总体架构
三、项目最终效果展示
四 、知道了缘由**着手一键部署 Truora
使用一键部署 Truora 服务时,仅支持 Linux 操作系统!!
由于官方的文档已经很详细了,这里就讲重点的步骤,理论的器械就不在概述,但是有兴趣的小伙伴可以自行阅读官方文档:https://truora.readthedocs.io/zh_CN/latest/docs/introduction.html
- 使用的系统先容
centos7.5(虚拟机)
2. 下载部署包(推荐使用)
## 从 GitHub 下载**部署包
wget “https://github.com/WeBankBlockchain/Truora-Service/releases/download/v1.0.0/docker-deploy.zip”
## 解压部署包
unzip docker-deploy.zip
若是需要下载指定版本,在版本列表中 选择响应版本下载。
3. 进入部署剧本(deploy_all.sh)所在目录,执行下令:
# 自动安装依赖服务,默认从 CDN 拉取 Docker 镜像
# Docker Hub 官方堆栈拉取镜像时,不仅速率比较慢,同时乐成率也相对较低# -d : 自动安装系统依赖
# -g : 使用国密
# -k : 从 Docker Hub 官方堆栈拉取 Docker 镜像
bash deploy_all.sh -d
4. 遇到问题如下(若是服务器没安装过 mysql 跳过这步):
[root@localhost tra]# bash deploy_all.sh -d
============================================================================================
[INFO] call script [./util/deploy_util.sh] with parameter: [ -m -w -f ]
+ bash ./util/deploy_util.sh -m -w -f -d
============================================================================================
[INFO] Current deploy root dir : [ /root/tra/util ]
============================================================================================
[INFO] Install requirements
[INFO] [openssl] already installed.
[INFO] [wget] already installed.
[INFO] [curl] already installed.
[INFO] Install Docker.
[INFO] Docker is already installed.
============================================================================================
[INFO] Check requirements.
[INFO] Try to start Docker service.
[INFO] Disabled SELinux temporari.
setenforce: SELinux is disabled
[INFO] Check Docker is ready to run containers.
9c27e219663c: Loading layer [==================================================gt;] 15.36kB/15.36kB
Loaded image: hello-world:latest
[INFO] Check minimize available memory.
============================================================================================
[INFO] Check ports.
[WARN] Port:[3306] is already in use\, please leave the port:[3306] for service:[MySQL]
Aborted\, error 5 in command: bash “${__root}/util.sh” check_ports
上面的报错是说 mysql 的 3306 端口冲突了,由于服务我之前已经安装了默认 3306 端口的 mysql 数据库了。
解决方案:
查询官方文档得知 \, 一键部署 剧本 deploy_all.sh 和 自力部署 剧本 deploy_single.sh 本质上都是通过挪用 util/deploy_util.sh 剧原本完成部署。
区别是 deploy_all.sh 剧本执行时,自带 -m,-w,-f 参数。
查看部署剧本参数
bash util/deploy_util.sh -h
[root@localhost tra]# bash util/deploy_util.sh -h
============================================================================================
[INFO] Current deploy root dir : [ /root/tra/util ]
Usage:
deploy_util.sh [-k] [-m] [-w] [-f] [-M 3306] [-W 5002] [-B 5020] [-S 5021] [-d] [-g] [-i fiscoorg] [-t] [-p] [-D] [-h]
-k Pull images from Docker hub.
-m Deploy a MySQL instance with Docker.
-w Deploy a WeBASE-Front service.
-f Deploy a 4 nodes FISCO-BCOS service.
-M Listen port of MySQL\, DeFiault 3306.
-W Listen port of WeBASE-Front\, DeFiault 5002.
-B Listen port of Truora-Web\, DeFiault 5020.
-S Listen port of Truora-Service\, DeFiault 5021.
-d Install dependencies during deployment.
-g Use guomi.
-i Organization of docker images\, DeFiault fiscoorg.
-t Use [dev] tag for images of Truora-Service and Truora-Web. On for test.
-p Pull [dev] latest for images of Truora-Service and Truora-Web. On works when option [-t] is on.
-D Set log level of Truora to [ DEBUG ]\, DeFiault [ INFO ].
-h Show help info.
那么连系上述的资料我们可以获得以下这个下令:
可以在不使用-m 该参数时,不部署 MySQL。需要在部署时输入 MySQL 信息
bash util/deploy_util.sh -w -f
效果如下:
5. 守候剧本自动完成安装历程
Enter MySQL IP, DeFiault: 127.0.0.1 ?
Enter MySQL port, DeFiault: 3306 ?
Enter MySQL user, DeFiault: truora ?
Enter MySQL password, DeFiault: DeFiaultPassword ?
[INFO] Deploy Truora of version: [ v1.0.0 ].
==============================================================
[INFO] Generate deploy files success:
FISCO-BCOS : [ v2.6.0 ]
WeBASE-Front : [ v1.4.2 ]
Truora : [ v1.0.0 ]
============================================================================================
[INFO] Pull Docker images.
[INFO] Docker image [ docker/compose:1.27.4 ] not exists!!
Pull image [ docker/compose:1.27.4 ] from cdn!!
–2021-02-03 17:15:47– https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBankBlockchain/Truora/docker/official/docker-compose-1.27.4.tar 正在分析主机 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)… 183.56.147.86\, 183.56.147.92\, 183.56.147.109\, …
正在毗邻 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)|183.56.147.86|:443… 已毗邻。
已发出 HTTP 请求,正在守候回应… 200 OK
长度:81187328 (77M) [application/x-tar]
正在保留至 : “docker-compose-1.27.4.tar”
44% [==================================================================gt; ] 36\,279\,46% [====================================================================gt; ] 37\,408\,47% [======================================================================gt; ] 38\,620\,49% [=========================================================================gt; ] 39\,896*[==========================================================================================================================gt;] 81\,187\,328 7.29MB/s 用时 20s
2021-02-03 17:16:07 (3.81 MB/s) – 已保留 “docker-compose-1.27.4.tar” [81187328/81187328])
beee9f30bc1f: Loading layer [==================================================gt;] 5.862MB/5.862MB
96d878488b7a: Loading layer [==================================================gt;] 4.096kB/4.096kB
03b31e131feb: Loading layer [==================================================gt;] 65.83MB/65.83MB
6db2e0a439c1: Loading layer [==================================================gt;] 9.468MB/9.468MB
Loaded image: docker/compose:1.27.4
[INFO] Docker image [ fiscoorg/webase-front:v1.4.2 ] not exists!!
Pull image [ fiscoorg/webase-front:v1.4.2 ] from cdn!!
–2021-02-03 17:16:11– https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBankBlockchain/Truora/docker/WeBASE/webase-front-v1.4.2.tar 正在分析主机 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)… 183.56.147.92\, 183.56.147.109\, 183.56.147.89\, …
正在毗邻 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)|183.56.147.92|:443… 已毗邻。
已发出 HTTP 请求,正在守候回应… 200 OK
长度:588814336 (562M) [application/x-tar]
正在保留至 : “webase-front-v1.4.2.tar”
*[==========================================================================================================================gt;] 588\,814\,336 2.68MB/s 用时 1m 52s
2021-02-03 17:18:04 (5.00 MB/s) – 已保留 “webase-front-v1.4.2.tar” [588814336/588814336])
805802706667: Loading layer [==================================================gt;] 65.61MB/65.61MB
3fd9df553184: Loading layer [==================================================gt;] 15.87kB/15.87kB
7a694df0ad6c: Loading layer [==================================================gt;] 3.072kB/3.072kB
9c061fb764cc: Loading layer [==================================================gt;] 364.4MB/364.4MB
2851c4990935: Loading layer [==================================================gt;] 94.14MB/94.14MB
f73ead30a09a: Loading layer [==================================================gt;] 52.58MB/52.58MB
83027d069e4c: Loading layer [==================================================gt;] 11.99MB/11.99MB
Loaded image: fiscoorg/webase-front:v1.4.2
[INFO] Docker image [ fiscoorg/fiscobcos:v2.6.0 ] not exists!!
Pull image [ fiscoorg/fiscobcos:v2.6.0 ] from cdn!!
–2021-02-03 17:18:57– https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBankBlockchain/Truora/docker/FISCO-BCOS/fiscobcos-v2.6.0.tar 正在分析主机 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)… 183.56.147.109\, 183.56.147.89\, 183.56.147.85\, …
正在毗邻 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)|183.56.147.109|:443… 已毗邻。
已发出 HTTP 请求,正在守候回应… 200 OK
长度:135297024 (129M) [application/x-tar]
正在保留至 : “fiscobcos-v2.6.0.tar”
*[==========================================================================================================================gt;] 135\,297\,024 3.21MB/s 用时 38s
2021-02-03 17:19:35 (3.36 MB/s) – 已保留 “fiscobcos-v2.6.0.tar” [135297024/135297024])
7ef368776582: Loading layer [==================================================gt;] 65.61MB/65.61MB
83f4287e1f04: Loading layer [==================================================gt;] 991.7kB/991.7kB
d3a6da143c91: Loading layer [==================================================gt;] 15.87kB/15.87kB
8682f9a74649: Loading layer [==================================================gt;] 3.072kB/3.072kB
d99c7442c0d5: Loading layer [==================================================gt;] 41.45MB/41.45MB
58e8a5a9a5d3: Loading layer [==================================================gt;] 27.2MB/27.2MB
Loaded image: fiscoorg/fiscobcos:v2.6.0
[INFO] Docker image [ fiscoorg/truora-web:v1.0.0 ] not exists!!
Pull image [ fiscoorg/truora-web:v1.0.0 ] from cdn!!
–2021-02-03 17:19:39– https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBankBlockchain/Truora/docker/truora/truora-web-v1.0.0.tar 正在分析主机 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)… 183.56.147.92\, 183.56.147.89\, 183.56.147.88\, …
正在毗邻 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)|183.56.147.92|:443… 已毗邻。
已发出 HTTP 请求,正在守候回应… 200 OK
长度:24883200 (24M) [application/x-tar]
正在保留至 : “truora-web-v1.0.0.tar”
*[==========================================================================================================================gt;] 24\,883\,200 6.74MB/s 用时 3.6s
2021-02-03 17:19:43 (6.52 MB/s) – 已保留 “truora-web-v1.0.0.tar” [24883200/24883200])
0fcbbeeeb0d7: Loading layer [==================================================gt;] 5.881MB/5.881MB
816ad72dad7c: Loading layer [==================================================gt;] 17.47MB/17.47MB
c4e38c3b23b3: Loading layer [==================================================gt;] 3.072kB/3.072kB
f07d8248da8b: Loading layer [==================================================gt;] 4.096kB/4.096kB
aa9a1fbe2932: Loading layer [==================================================gt;] 3.584kB/3.584kB
474c1b7b4d85: Loading layer [==================================================gt;] 4.096kB/4.096kB
2ccbf75f1d47: Loading layer [==================================================gt;] 5.12kB/5.12kB
089df5f82d6c: Loading layer [==================================================gt;] 1.471MB/1.471MB
Loaded image: fiscoorg/truora-web:v1.0.0
[INFO] Docker image [ fiscoorg/truora-service:v1.0.0 ] not exists!!
Pull image [ fiscoorg/truora-service:v1.0.0 ] from cdn!!
–2021-02-03 17:19:45– https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBankBlockchain/Truora/docker/truora/truora-service-v1.0.0.tar 正在分析主机 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)… 183.56.147.89\, 183.56.147.88\, 183.56.147.86\, …
正在毗邻 osp-1257653870.cos.ap-guangzhou.myqcloud.com (osp-1257653870.cos.ap-guangzhou.myqcloud.com)|183.56.147.89|:443… 已毗邻。
已发出 HTTP 请求,正在守候回应… 200 OK
长度:630119424 (601M) [application/x-tar]
正在保留至 : “truora-service-v1.0.0.tar”
*[==========================================================================================================================gt;] 630\,119\,424 2.11MB/s 用时 2m 55s
2021-02-03 17:22:40 (3.44 MB/s) – 已保留 “truora-service-v1.0.0.tar” [630119424/630119424])
c95d2191d777: Loading layer [==================================================gt;] 65.62MB/65.62MB
27502392e386: Loading layer [==================================================gt;] 15.87kB/15.87kB
9f10818f1f96: Loading layer [==================================================gt;] 3.072kB/3.072kB
2f7fbf8d5df9: Loading layer [==================================================gt;] 410.7MB/410.7MB
043ffd2c9b1c: Loading layer [==================================================gt;] 1.536kB/1.536kB
fc063d5ab031: Loading layer [==================================================gt;] 102.3MB/102.3MB
20d7207b0483: Loading layer [==================================================gt;] 35.46MB/35.46MB
5ac5a77392db: Loading layer [==================================================gt;] 15.96MB/15.96MB
Loaded image: fiscoorg/truora-service:v1.0.0
============================================================================================
[INFO] Generate START and STOP shell scripts.
[INFO] Deploy Truora service SUCCESS!! Try [ bash start.sh ] and Enjoy!!
[INFO] Start:[ bash start.sh ]
[INFO] Stop :[ bash stop.sh ]
若是一键部署剧本 deploy_all.sh 执行乐成后显示 Deploy Truora service SUCCESS!! ,示意部署乐成。
- 服务启停
使用 bash start.sh 启动 Truora 服务。
使用 bash stop.sh 住手服务。
在启动时,剧本会依次启动服务,并检测服务启动效果。
[root@localhost tra]# bash start.sh
==============================================================
Root dir: [/root/tra]
Start FISCO-BCOS.
Creating nodes127.0.0.1node0 … done
Creating nodes127.0.0.1node2 … done
Creating nodes127.0.0.1node1 … done
Creating nodes127.0.0.1node3 … done
[INFO] Wait for FISCO-BCOS nodes start up…
[INFO] FISCO-BCOS nodes start success.
Start WeBASE-Front.
Creating webase-front … done
[INFO] Wait for WeBASE-Front start up on port:[5002]…
[INFO] WeBASE-Front start success.
String Truora..
Creating truora-service … done
Creating truora-web … done
[INFO] Wait for Truora-Service start up on port:[5021]…
[INFO] Truora-Service start success.
[INFO] Wait for Truora-Web start up on port:[5020]…
[INFO] Truora-Web start SUCCESS.
Truora service start up SUCCESS !!
若是提醒 Truora service start up SUCCESS !!,示意 Truora 服务启动乐成。
- 接见服务
Truora 服务启动乐成后,打开浏览器,输入 http://[IP]:5020,我们这里是:http://192.168.119.133:5020,接见 Truora-Web 服务,乐成后如下图所示:
总结
Truora 第一篇系列文章我们重点解说《一键部署 Truora》,通过上面的文章我们可以知道在一键安装前服务器上已经安装了 mysql ,那么我们就需要调整我们的一键部署下令及参数了。总体来讲照样比较简单,总结为:下载剧本、执行剧本、启动服务、接见检查服务。
产业区块链公司纸贵科技获数千万元B轮融资
近日,产业区块链头部企业纸贵科技宣布获数千万元人民币B轮融资,由老股东赛富亚洲创始人阎焱持续加码。本轮融资将用于加大区块链核心技术研发投入、扩建高素质人才团队。 纸贵科技成立于2016年,是区块链技术与服务提供商,核心人员来自Hyperledger、IBM中国
文章标题:基于区块链的自动抽奖系统从 0 到 1 实现(一)
文章链接:https://www.btchangqing.cn/199390.html
更新时间:2022年11月20日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。