FISCO BCOS离线无网络部署安装系列教程之WeBase v1.4.1部署安装

WeBASE管理平台分为四个部分:节点前置,签名服务,节点管理,WeBASE管理台。

# 前言 <font color=#999AAA >最近经常有小伙伴问到:生产环境没有网络怎么部署FISCO BCOS以及各种中间件呢?在网上目前也找不到相关的资料,所以这里就抽空闲时间来做一下相关的教程,方便小伙伴们快速入坑。**这里以centos7.5为例、其他操作系统类似**,前面的章节已经离线部署的FISCO BCOS的底层,现在我们来离线部署我们的WeBase v1.4.1</font> # 一、思路? WeBASE管理平台分为**四个部分**:节点前置,签名服务,节点管理,WeBASE管理台。需要手动搭建以下4给部分: 1、节点前置搭建 节点前置使用Spring Boot的JAVA后台服务 .2、签名服务搭建 签名服务使用Spring Boot的JAVA后台服务 .3、节点管理搭建 节点管理使用Spring Boot的JAVA后台服务 4、WeBASE管理平台 WeBASE管理台使用框架vue-cli 需要提前准备的环境([离线安装以下环境教程点这里](https://xiangbiao.blog.csdn.net/article/details/109601308)): | 环境 | 版本 | | ------ | ---------------------- | | Java | JDK8或以上版本 | | MySQL | MySQL-5.6或以上版本 | | Nginx | nginx1.6或以上版本(本文选择1.17.8,不是硬性要求) | 所以我们要安装区块链浏览器之前得先离线安装上表中的环境。 # 二、正式开始 ## 1.环境介绍 开发机(有网络,windows/mac/linux都可以): ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/648228235.png) 服务器: 10.21.36.166 (无网络) ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/189090983.png) ## 2.下载WeBase v1.4.1相关的安装包 官方CDN加速下载地址: ```bash wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-front.zip wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-sign.zip wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-node-mgr.zip wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-web.zip ``` 彪哥整理好的: [webase1.4.1全套安装包.zip](https://download.csdn.net/download/ws327443752/13109922) ## 3.把WeBase v1.4.1相关的安装包上传至无网络的服务器中 ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/851515834.png) ## 4.安装WeBase v1.4.1相关的安装包 ### 4.1解压离线包 ```bash [root@qkl-10-21-36-166 fisco]# unzip webase-deploy.zip ``` ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/874151920.png) ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/121872235.png) ### 4.2 配置安装WeBASE-Front PS: 需要将节点所在目录nodes/${ip}/sdk下的ca.crt、node.crt和node.key文件拷贝到当前conf目录,供SDK与节点建立连接时使用。 ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/576812968.png) **修改/webase-front/conf/application.yml的配置:** nodePath改为自己的环境相关的节点路径 ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/331517242.png) **修改后的配置如下:** ```yaml # server version version: v1.4.1 spring: datasource: url: jdbc:h2:file:../h2/webasefront;DB_CLOSE_ON_EXIT=FALSE databaseName: db driverClassName: org.h2.Driver serverName: username: password: jpa: database-platform: org.hibernate.dialect.H2Dialect database: H2 openInView: false show_sql: false generate-ddl: true hibernate: ddl-auto: update naming-strategy: org.hibernate.cfg.EJB3NamingStrategy session: events: log: false properties: hibernate.cache.use_query_cache: false hibernate.generate_statistics: false h2: console: enabled: true path: /console settings: web-allow-others: false trace: true rabbitmq: host: 127.0.0.1 port: 5672 username: password: virtual-host: publisher-confirm: true ssl: enabled: false http: multipart: max-request-size: 30MB # request max size max-file-size: 20MB # single file size server: port: 5002 context-path: /WeBASE-Front connection-timeout: 30000 tomcat: max-threads: 200 max-connections: 10000 sdk: orgName: orgTest corePoolSize: 50 maxPoolSize: 100 queueCapacity: 100 timeout: 10000 keepAlive: 60 ip: 10.21.36.166 channelPort: 20200 encryptType: 0 # 0:ecdsa, 1:guomi logging: config: classpath:log4j2.xml constant: keyServer: 10.21.36.166:5004 # webase-sign服务的IP:Port(单个) transMaxWait: 30 monitorDisk: / monitorEnabled: true aesKey: EfdsW23D23d3df43 nodePath: /home/node_10.21.36.166_30300 http_read_timeOut: 100000 http_connect_timeOut: 100000 # event sync map task (unit: ms) eventRegisterTaskFixedDelay: 5000 syncEventMapTaskFixedDelay: 60000 # sync stat log data task (unit: ms) syncStatLogTime: 5000 syncStatLogCountLimit: 10000 statLogEnabled: false ``` ```bash // 给权限 [root@qkl-10-21-36-166 webase-front]# chmod +x *.sh // 启动 [root@qkl-10-21-36-166 webase-front]# ./start.sh =============================================================================================== Server com.webank.webase.front.Application Port 5002 ...PID(33159) [Starting]. Please check message through the log file (default path:./log/). =============================================================================================== ``` **访问服务测试:** ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/637728540.png) ### 4.3配置安装WeBASE-Sign **进入数据库控制台创建webase-sign的数据库** ```bash [root@qkl-10-21-36-166 webase-front]# mysql -uroot -p Enter password: mysql> create database webasesign; Query OK, 1 row affected (0.01 sec) ``` **进入webase-sign的文件夹.修改conf/application.yml** ```yaml server: # 本工程服务端口,端口被占用则修改 port: 5004 context-path: /WeBASE-Sign spring: datasource: # 数据库连接信息 url: jdbc:mysql://127.0.0.1:3306/webasesign?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8 # 数据库用户名 username: dbUsername # 数据库密码 password: dbPassword driver-class-name: com.mysql.cj.jdbc.Driver constant: # aes加密key(16位),如启用,各互联的子系统的加密key需保持一致 aesKey: EfdsW23D23d3df43 ``` **给权限,启动项目** ```bash [root@qkl-10-21-36-166 webase-deploy]# cd webase-sign/ [root@qkl-10-21-36-166 webase-sign]# ls apps conf lib start.sh status.sh stop.sh [root@qkl-10-21-36-166 webase-sign]# chmod +x *.sh [root@qkl-10-21-36-166 webase-sign]# ./start.sh =============================================================================================== Starting Server com.webank.webase.sign.Application Port 5004 ...PID(10471) [Starting]. Please check message through the log file (default path:./log/). =============================================================================================== ``` ### 4.4配置安装WeBASE-Node-Manager **进入数据库控制台创建webase-node-mgr的数据库** ```bash [root@qkl-10-21-36-166 webase-front]# mysql -uroot -p Enter password: mysql> create database nodemgr; Query OK, 1 row affected (0.01 sec) ``` **下载数据库脚本** [https://download.csdn.net/download/ws327443752/13110232](https://download.csdn.net/download/ws327443752/13110232) **把下载的脚本上传至无网络的服务器中** ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/461112000.png) 修改webase.sh文件配置如下(重点改数据库链接配置):: ```bash #!/bin/sh echo -e "\n init start...." IP=${1} PORT=${2} if [[ ! $IP || ! $PORT ]] ; then echo "Usage: sh ${0} ip port" echo "eg: sh ${0} 127.0.0.1 8501" exit 1 fi #dbUser DBUSER="root" #dbPass PASSWD="xxx" #dbName DBNAME="nodemgr" #connect to database then execute init cat webase-sql.list | mysql --user=$DBUSER --password=$PASSWD --host=$IP --database=$DBNAME --port=$PORT --default-character-set=utf8; if [ "$?" == "0" ]; then echo -e "init success... \n" else echo -e "init fail... \n" fi exit ``` **给权限,并执行脚本** ```bash [root@qkl-10-21-36-166 webase-node-mgr]# chmod +x webase.sh [root@qkl-10-21-36-166 webase-node-mgr]# bash webase.sh 127.0.0.1 3306 ``` **进入webase-node-mgr的文件夹.修改conf/application.yml** 重点修改数据库连接配置和IP: ```yaml # server version version: v1.4.1 #server config server: port: 5001 servlet: context-path: /WeBASE-Node-Manager #mybatis config mybatis: configuration: map-underscore-to-camel-case: true typeAliasesPackage: com.webank.webase.node.mgr mapperLocations: classpath:mapper/*.xml # database connection configuration spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/nodemgr?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull username: "root" password: "xxxxxxxxxxxx" initialSize: 10 minIdle: 5 maxActive: 30 aop: proxy-target-class: true #log config logging: config: classpath:log/log4j2.xml level: com.webank.webase.node.mgr: info #constants constant: ###http request # login's authorization isUseSecurity: true # verification code expire time (s) verificationCodeMaxAge: 300 # if disabled as false enableVerificationCode: true # verification code solid value, only when enableVerificationCode is false works verificationCodeValue: "8888" # auth token code expire time (s) authTokenMaxAge: 1800 ignoreCheckFront: /account/login,/account/pictureCheckCode,/login,/user/privateKey,/front/new,/front/find,,/group/generate,/group/start ###front http request frontUrl: http://%1s:%2d/WeBASE-Front/%3s httpTimeOut: 5000 contractDeployTimeOut: 30000 isPrivateKeyEncrypt: true maxRequestFail: 3 sleepWhenHttpMaxFail: 60000 ###common developerModeEnable: false isDeleteInfo: true transRetainMax: 10000 deleteInfoCron: "0 0/1 * * * ?" statisticsTransDailyCron: "0 0/1 * * * ?" resetGroupListCycle: 600000 groupInvalidGrayscaleValue: 1M # y:year, M:month, d:day of month, h:hour, m:minute, n:forever valid notSupportFrontIp: ###block info (pulling data from chain) isBlockPullFromZero: false pullBlockInitCnts: 1000 pullBlockSleepTime: 200 pullBlockTaskFixedDelay: 30000 blockRetainMax: 10000 ###transaction monitor transMonitorTaskFixedRate: 60000 #How long does it take to start the next task after the end (second) analysisSleepTime: 200 monitorInfoRetainMax: 10000 isMonitorIgnoreUser: false isMonitorIgnoreContract: false monitorUnusualMaxCount: 20 ###alert mail monitor task interval: 5mins unit: ms auditMonitorTaskFixedDelay: 300000 nodeStatusMonitorTaskFixedDelay: 60000 #must larger than @pullBlockTaskFixedDelay certMonitorTaskFixedDelay: 300000 permitUrlArray: /account/login,/account/pictureCheckCode,/login,/user/privateKey/**,/encrypt,/version,/front/refresh #### 1.4.0 visual deploy #### deployType 部署方式: # 0, 先使用 build_chain.sh 部署链并启用 WeBASE-Front 服务,然后手动添加前置; # 1, 使用可视化部署, 需要参考WeBASE文档填写下面参数 deployType: 0 #### if deployType = 0, ignore below properties #### # 镜像名 dockerRepository: "fiscoorg/fisco-webase" # WeBASE-Sign 访问地址 webaseSignAddress: "10.21.36.166:5004" # 部署区块链服务的节点主机存放节点配置文件和数据的目录 rootDirOnHost: "/opt/fisco" # SSH 免密登录的账号 sshDefaultUser: root # SSH 服务的端口,默认 22 sshDefaultPort: 22 #### if deployType = 0, ignore upper properties #### sdk: # 加密类型:0: 非国密; 1: 国密 encryptType: 0 # executor config for async pulling data from chain executor: corePoolSize: 3 maxPoolSize: 10 queueSize: 50 threadNamePrefix: "node-mgr-async-" # scheduler config for sync scheduled task scheduler: poolSize: 50 threadNamePrefix: "node-mgr-task-" awaitTerminationSeconds: 600 waitForTasksToCompleteOnShutdown: true ``` **给权限,启动项目** ```bash [root@qkl-10-21-36-166 webase-deploy]# cd webase-node-mgr/ [root@qkl-10-21-36-166 webase-node-mgr]# ls apps conf lib script start.sh status.sh stop.sh [root@qkl-10-21-36-166 webase-node-mgr]# chmod +x *.sh [root@qkl-10-21-36-166 webase-node-mgr]# ./start.sh =============================================================================================== Server com.webank.webase.node.mgr.Application Port 5001 ...PID(33541) [Starting]. Please message check through the log file (default path:./log/). =============================================================================================== ``` ### 4.5配置安装WeBASE-Web **WeBASE-Web是基于vue的web,所以只需配置nginx即可跑起来** PS: 因为我们的服务器已有nginx,可在原配置文件nginx.conf增加一个server: ```xml upstream node_mgr_server{ server 10.21.36.166:5001; # 节点管理服务ip和端口 } server { listen 5000 default_server; # 前端端口(端口需要开通策略且不能被占用) server_name 10.21.36.166; # 服务器ip,也可配置为域名 location / { root /fisco/webase-deploy/webase-web; # 前端文件路径(文件需要有权限访问) index index.html index.htm; try_files $uri $uri/ /index.html =404; } include /etc/nginx/default.d/*.conf; location /mgr { proxy_pass http://node_mgr_server/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } ``` **检查webase** ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/991919861.png) ![在这里插入图片描述](https://img.learnblockchain.cn/2020/11/17_/925827935.png) 检查后发现正常,后续配置相关配置即可。本文重点是离线安装而不是配置,所以不做过多的演示! 有需要的可以参考官方的文档:[https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/index.html#id16](https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/index.html#id16) # 总结 <font color=#999AAA > 无网络离线安装部署FISCO BCOS 中间件webase平台,还是比较简单 ,大家可以安装教程一步一步的操作。希望可以帮助有需要的小伙伴快速入坑! ![向彪-区块链应用架构师](https://img.learnblockchain.cn/2020/11/17_/954182898.png)

前言

<font color=#999AAA >最近经常有小伙伴问到:生产环境没有网络怎么部署FISCO BCOS以及各种中间件呢?在网上目前也找不到相关的资料,所以这里就抽空闲时间来做一下相关的教程,方便小伙伴们快速入坑。这里以centos7.5为例、其他操作系统类似,前面的章节已经离线部署的FISCO BCOS的底层,现在我们来离线部署我们的WeBase v1.4.1</font>

一、思路?

WeBASE管理平台分为四个部分:节点前置,签名服务,节点管理,WeBASE管理台。需要手动搭建以下4给部分: 1、节点前置搭建 节点前置使用Spring Boot的JAVA后台服务

.2、签名服务搭建 签名服务使用Spring Boot的JAVA后台服务

.3、节点管理搭建 节点管理使用Spring Boot的JAVA后台服务

4、WeBASE管理平台 WeBASE管理台使用框架vue-cli

需要提前准备的环境(离线安装以下环境教程点这里):

环境 版本
Java JDK8或以上版本
MySQL MySQL-5.6或以上版本
Nginx nginx1.6或以上版本(本文选择1.17.8,不是硬性要求)

所以我们要安装区块链浏览器之前得先离线安装上表中的环境。

二、正式开始

1.环境介绍

开发机(有网络,windows/mac/linux都可以):

服务器: 10.21.36.166 (无网络)

2.下载WeBase v1.4.1相关的安装包

官方CDN加速下载地址:


wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-front.zip
wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-sign.zip
wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-node-mgr.zip
wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.4.1/webase-web.zip

彪哥整理好的:

webase1.4.1全套安装包.zip

3.把WeBase v1.4.1相关的安装包上传至无网络的服务器中

4.安装WeBase v1.4.1相关的安装包

4.1解压离线包

[root@qkl-10-21-36-166 fisco]# unzip webase-deploy.zip 

4.2 配置安装WeBASE-Front

PS: 需要将节点所在目录nodes/${ip}/sdk下的ca.crt、node.crt和node.key文件拷贝到当前conf目录,供SDK与节点建立连接时使用。 修改/webase-front/conf/application.yml的配置: nodePath改为自己的环境相关的节点路径 修改后的配置如下:

# server version
version: v1.4.1

spring:
  datasource:
    url: jdbc:h2:file:../h2/webasefront;DB_CLOSE_ON_EXIT=FALSE
    databaseName: db
    driverClassName: org.h2.Driver
    serverName:
    username:
    password:
  jpa:
    database-platform: org.hibernate.dialect.H2Dialect
    database: H2
    openInView: false
    show_sql: false
    generate-ddl: true
    hibernate:
      ddl-auto: update
      naming-strategy: org.hibernate.cfg.EJB3NamingStrategy
      session:
        events:
          log: false
    properties:
      hibernate.cache.use_query_cache: false
      hibernate.generate_statistics: false
  h2:
    console:
      enabled: true
      path: /console
      settings:
        web-allow-others: false
        trace: true
  rabbitmq:
    host: 127.0.0.1
    port: 5672
    username:
    password:
    virtual-host:
    publisher-confirm: true
    ssl:
      enabled: false
  http:
    multipart:
      max-request-size: 30MB # request max size
      max-file-size: 20MB # single file size

server:
  port: 5002
  context-path: /WeBASE-Front
  connection-timeout: 30000
  tomcat:
    max-threads: 200
    max-connections: 10000

sdk:
  orgName: orgTest
  corePoolSize: 50
  maxPoolSize: 100
  queueCapacity: 100
  timeout: 10000
  keepAlive: 60
  ip: 10.21.36.166
  channelPort: 20200
  encryptType: 0  # 0:ecdsa, 1:guomi

logging:
  config: classpath:log4j2.xml

constant:
  keyServer: 10.21.36.166:5004 # webase-sign服务的IP:Port(单个)
  transMaxWait: 30
  monitorDisk: /
  monitorEnabled: true
  aesKey: EfdsW23D23d3df43
  nodePath: /home/node_10.21.36.166_30300
  http_read_timeOut: 100000
  http_connect_timeOut: 100000
  # event sync map task (unit: ms)
  eventRegisterTaskFixedDelay: 5000
  syncEventMapTaskFixedDelay: 60000
  # sync stat log data task (unit: ms)
  syncStatLogTime: 5000
  syncStatLogCountLimit: 10000
  statLogEnabled: false
// 给权限
[root@qkl-10-21-36-166 webase-front]# chmod +x *.sh

// 启动
[root@qkl-10-21-36-166 webase-front]# ./start.sh 
===============================================================================================
Server com.webank.webase.front.Application Port 5002 ...PID(33159) [Starting]. Please check message through the log file (default path:./log/).
===============================================================================================

访问服务测试:

4.3配置安装WeBASE-Sign

进入数据库控制台创建webase-sign的数据库

[root@qkl-10-21-36-166 webase-front]# mysql -uroot -p
Enter password: 

mysql> create database webasesign;
Query OK, 1 row affected (0.01 sec)

进入webase-sign的文件夹.修改conf/application.yml

server: 
  # 本工程服务端口,端口被占用则修改
  port: 5004
  context-path: /WeBASE-Sign

spring: 
  datasource: 
    # 数据库连接信息
    url: jdbc:mysql://127.0.0.1:3306/webasesign?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8
    # 数据库用户名
    username: dbUsername
    # 数据库密码
    password: dbPassword
    driver-class-name: com.mysql.cj.jdbc.Driver

constant: 
  # aes加密key(16位),如启用,各互联的子系统的加密key需保持一致
  aesKey: EfdsW23D23d3df43

给权限,启动项目

[root@qkl-10-21-36-166 webase-deploy]# cd webase-sign/
[root@qkl-10-21-36-166 webase-sign]# ls
apps  conf  lib  start.sh  status.sh  stop.sh
[root@qkl-10-21-36-166 webase-sign]# chmod +x *.sh
[root@qkl-10-21-36-166 webase-sign]# ./start.sh 
===============================================================================================
Starting Server com.webank.webase.sign.Application Port 5004 ...PID(10471) [Starting]. Please check message through the log file (default path:./log/).
===============================================================================================

4.4配置安装WeBASE-Node-Manager

进入数据库控制台创建webase-node-mgr的数据库

[root@qkl-10-21-36-166 webase-front]# mysql -uroot -p
Enter password: 

mysql> create database nodemgr;
Query OK, 1 row affected (0.01 sec)

下载数据库脚本 https://download.csdn.net/download/ws327443752/13110232

把下载的脚本上传至无网络的服务器中

修改webase.sh文件配置如下(重点改数据库链接配置)::

#!/bin/sh

echo -e "\n init start...."

IP=${1}
PORT=${2}

if [[ ! $IP || ! $PORT ]] ; then
    echo "Usage: sh ${0} ip port"
    echo "eg: sh ${0} 127.0.0.1 8501"
    exit 1
fi

#dbUser
DBUSER="root"
#dbPass
PASSWD="xxx"
#dbName
DBNAME="nodemgr"

#connect to database then execute init
cat webase-sql.list | mysql --user=$DBUSER --password=$PASSWD --host=$IP --database=$DBNAME --port=$PORT --default-character-set=utf8;

if [ "$?" == "0" ]; then
    echo -e "init success... \n"
else
    echo -e "init fail... \n"
fi

exit

给权限,并执行脚本

[root@qkl-10-21-36-166 webase-node-mgr]# chmod +x webase.sh
[root@qkl-10-21-36-166 webase-node-mgr]# bash webase.sh 127.0.0.1 3306

进入webase-node-mgr的文件夹.修改conf/application.yml

重点修改数据库连接配置和IP:

# server version
version: v1.4.1

#server config
server:
  port: 5001
  servlet:
    context-path: /WeBASE-Node-Manager

#mybatis config
mybatis:
  configuration:
    map-underscore-to-camel-case: true
  typeAliasesPackage: com.webank.webase.node.mgr
  mapperLocations: classpath:mapper/*.xml

# database connection configuration
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/nodemgr?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
    username: "root"
    password: "xxxxxxxxxxxx"
    initialSize: 10
    minIdle: 5
    maxActive: 30

  aop:
    proxy-target-class: true

#log config
logging:
  config: classpath:log/log4j2.xml
  level:
    com.webank.webase.node.mgr: info

#constants
constant:
  ###http request
  # login's authorization
  isUseSecurity: true
  # verification code expire time (s)
  verificationCodeMaxAge: 300
  # if disabled as false
  enableVerificationCode: true
  # verification code solid value, only when enableVerificationCode is false works
  verificationCodeValue: "8888"
  # auth token code expire time (s)
  authTokenMaxAge: 1800
  ignoreCheckFront: /account/login,/account/pictureCheckCode,/login,/user/privateKey,/front/new,/front/find,,/group/generate,/group/start
  ###front http request
  frontUrl: http://%1s:%2d/WeBASE-Front/%3s
  httpTimeOut: 5000
  contractDeployTimeOut: 30000
  isPrivateKeyEncrypt: true
  maxRequestFail: 3
  sleepWhenHttpMaxFail: 60000

  ###common
  developerModeEnable: false
  isDeleteInfo: true
  transRetainMax: 10000
  deleteInfoCron: "0 0/1 * * * ?"
  statisticsTransDailyCron: "0 0/1 * * * ?"
  resetGroupListCycle: 600000
  groupInvalidGrayscaleValue: 1M    # y:year, M:month, d:day of month, h:hour, m:minute, n:forever valid
  notSupportFrontIp:

  ###block info (pulling data from chain)
  isBlockPullFromZero: false
  pullBlockInitCnts: 1000
  pullBlockSleepTime: 200
  pullBlockTaskFixedDelay: 30000
  blockRetainMax: 10000
  ###transaction monitor
  transMonitorTaskFixedRate: 60000  #How long does it take to start the next task after the end (second)
  analysisSleepTime: 200
  monitorInfoRetainMax: 10000
  isMonitorIgnoreUser: false
  isMonitorIgnoreContract: false
  monitorUnusualMaxCount: 20
  ###alert mail monitor task interval: 5mins unit: ms
  auditMonitorTaskFixedDelay: 300000
  nodeStatusMonitorTaskFixedDelay: 60000  #must larger than @pullBlockTaskFixedDelay
  certMonitorTaskFixedDelay: 300000

  permitUrlArray: /account/login,/account/pictureCheckCode,/login,/user/privateKey/**,/encrypt,/version,/front/refresh

  #### 1.4.0 visual deploy
  #### deployType 部署方式:
  # 0, 先使用 build_chain.sh 部署链并启用 WeBASE-Front 服务,然后手动添加前置; 
  # 1, 使用可视化部署, 需要参考WeBASE文档填写下面参数
  deployType: 0
  #### if deployType = 0, ignore below properties ####
  # 镜像名
  dockerRepository: "fiscoorg/fisco-webase"
  # WeBASE-Sign 访问地址
  webaseSignAddress: "10.21.36.166:5004"
  # 部署区块链服务的节点主机存放节点配置文件和数据的目录
  rootDirOnHost: "/opt/fisco"
  # SSH 免密登录的账号
  sshDefaultUser: root
  # SSH 服务的端口,默认 22
  sshDefaultPort: 22
  #### if deployType = 0, ignore upper properties ####

sdk:
  # 加密类型:0: 非国密;  1: 国密
  encryptType: 0

# executor config for async pulling data from chain
executor:
  corePoolSize: 3
  maxPoolSize: 10
  queueSize: 50
  threadNamePrefix: "node-mgr-async-"

# scheduler config for sync scheduled task
scheduler:
  poolSize: 50
  threadNamePrefix: "node-mgr-task-"
  awaitTerminationSeconds: 600
  waitForTasksToCompleteOnShutdown: true

给权限,启动项目

[root@qkl-10-21-36-166 webase-deploy]# cd webase-node-mgr/
[root@qkl-10-21-36-166 webase-node-mgr]# ls
apps  conf  lib  script  start.sh  status.sh  stop.sh
[root@qkl-10-21-36-166 webase-node-mgr]# chmod +x *.sh
[root@qkl-10-21-36-166 webase-node-mgr]# ./start.sh 
===============================================================================================
Server com.webank.webase.node.mgr.Application Port 5001 ...PID(33541) [Starting]. Please message check through the log file (default path:./log/).
===============================================================================================

4.5配置安装WeBASE-Web

WeBASE-Web是基于vue的web,所以只需配置nginx即可跑起来

PS: 因为我们的服务器已有nginx,可在原配置文件nginx.conf增加一个server:

upstream node_mgr_server{
    server 10.21.36.166:5001; # 节点管理服务ip和端口
}

server {
    listen       5000 default_server; # 前端端口(端口需要开通策略且不能被占用)
    server_name  10.21.36.166;           # 服务器ip,也可配置为域名
    location / {
            root   /fisco/webase-deploy/webase-web;   # 前端文件路径(文件需要有权限访问)
            index  index.html index.htm;
            try_files $uri $uri/ /index.html =404;
    }

    include /etc/nginx/default.d/*.conf;

    location /mgr {
                proxy_pass    http://node_mgr_server/;          
                proxy_set_header        Host             $host;
                proxy_set_header        X-Real-IP        $remote_addr;
                proxy_set_header        X-Forwarded-For  $proxy_add_x_forwarded_for;
    }
}

检查webase

检查后发现正常,后续配置相关配置即可。本文重点是离线安装而不是配置,所以不做过多的演示! 有需要的可以参考官方的文档:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/index.html#id16

总结

<font color=#999AAA > 无网络离线安装部署FISCO BCOS 中间件webase平台,还是比较简单 ,大家可以安装教程一步一步的操作。希望可以帮助有需要的小伙伴快速入坑!

  • 发表于 2020-11-17 08:41
  • 阅读 ( 4828 )
  • 学分 ( 2 )
  • 分类:FISCO BCOS

评论