在ubuntu上搭建webasae

1.准备搭建环境之前的工作

1.1Ctrl+Alt+T打开控制台后进入root,方便接下来的配置

su root

1.2删除http与https的代理(如果没有代理则不用删除)

unset http_proxy

unset https_proxy

2.配置环境

2.1配置java(JDK8或以上版本)

  # 安装默认Java版本(Java 8或以上)
  sudo apt install -y default-jdk
  # 查询Java版本
  java -version

2.2配置python(python3.5+)

// 添加仓库,回车继续
sudo add-apt-repository ppa:deadsnakes/ppa
// 安装python 3.6
sudo apt-get install -y python3.6
sudo apt-get install -y python3-pip
//查询python版本
python3 --version

2.3配置mysql数据库(MySQL-5.6或以上版本)

# 查看有没有安装MySQL:

dpkg -l | grep mysql

# 安装MySQL:

apt install mysql-server

安装完成之后可以使用如下命令来检查是否安装成功:

netstat -tap | grep mysql

通过上述命令检查之后,如果看到有 mysql 的socket处于 LISTEN 状态则表示安装成功

mysql --version

查看数据库版本

2.4 PyMySQL部署(Python3.6+)

sudo apt-get install -y python3-pip
sudo pip3 install PyMySQL

2.5nginx部署

apt-get install nginx

nginx -v

service nginx start

3. 正戏开始

3.1进入以下网址下载安装包

https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.4/webase-deploy.zip

3.2打开控制台后进入下载目录后解压进入解压好的目录中

  cd Downloads

unzip webase-deploy.zip

可以看到文件被锁住了,我们需要开放权限

sudo chmod -R 777 webase-deploy

3.4然后找到common.properties文件并用记事本打开

3.5原文件如下

# WeBASE子系统的最新版本(v1.1.0或以上版本)
webase.web.version=v1.5.4
webase.mgr.version=v1.5.4
webase.sign.version=v1.5.3
webase.front.version=v1.5.4

#####################################################################
## 使用Docker启用Mysql服务,则需要配置以下值

# 1: enable mysql in docker
# 0: mysql run in host, required fill in the configuration of webase-node-mgr and webase-sign
docker.mysql=1

# if [docker.mysql=1], mysql run in host (only works in [installDockerAll])
# run mysql 5.6 by docker
docker.mysql.port=23306
# default user [root]
docker.mysql.password=123456

#####################################################################
## 不使用Docker启动Mysql,则需要配置以下值

# 节点管理子系统mysql数据库配置
mysql.ip=127.0.0.1
mysql.port=3306
mysql.user=dbUsername
mysql.password=dbPassword
mysql.database=webasenodemanager

# 签名服务子系统mysql数据库配置
sign.mysql.ip=localhost
sign.mysql.port=3306
sign.mysql.user=dbUsername
sign.mysql.password=dbPassword
sign.mysql.database=webasesign



# 节点前置子系统h2数据库名和所属机构
front.h2.name=webasefront
front.org=fisco

# WeBASE管理平台服务端口
web.port=5000
# 启用移动端管理平台 (0: disable, 1: enable)
web.h5.enable=1

# 节点管理子系统服务端口
mgr.port=5001
# 节点前置子系统端口
front.port=5002
# 签名服务子系统端口
sign.port=5004


# 节点监听Ip
node.listenIp=127.0.0.1
# 节点p2p端口
node.p2pPort=30300
# 节点链上链下端口
node.channelPort=20200
# 节点rpc端口
node.rpcPort=8545

# 加密类型 (0: ECDSA算法, 1: 国密算法)
encrypt.type=0
# SSL连接加密类型 (0: ECDSA SSL, 1: 国密SSL)
# 只有国密链才能使用国密SSL
encrypt.sslType=0

# 是否使用已有的链(yes/no)
if.exist.fisco=no

# 使用已有链时需配置
# 已有链的路径,start_all.sh脚本所在路径
# 路径下要存在sdk目录(sdk目录中包含了SSL所需的证书,即ca.crt、sdk.crt、sdk.key和gm目录(包含国密SSL证书,gmca.crt、gmsdk.crt、gmsdk.key、gmensdk.crt和gmensdk.key)
fisco.dir=/data/app/nodes/127.0.0.1
# 前置所连接节点,在127.0.0.1目录中的节点中的一个
# 节点路径下要存在conf文件夹,conf里存放节点证书(ca.crt、node.crt和node.key)
node.dir=node0

# 搭建新链时需配置
# FISCO-BCOS版本
fisco.version=2.7.2
# 搭建节点个数(默认两个)
node.counts=nodeCounts

我们需要修改 节点管理子系统mysql数据库配置与签名服务子系统mysql数据库配置,也就是需要创建两个数据库

所以,我们进行如下操作

mysql -uroot -p

//进入数据库

create database db01;

//创建数据库

create database db02;

修改后的ommon.properties文件

[common]

# Webase Subsystem Version (v1.1.0 or above)
webase.web.version=v1.5.4
webase.mgr.version=v1.5.4
webase.sign.version=v1.5.3
webase.front.version=v1.5.4

#####################################################################
# if use [installDockerAll] to install WeBASE by docker
# if use [installAll] or [installWeBASE], ignore configuration here

# 1: enable mysql in docker
# 0: mysql run in host, required fill in the configuration of webase-node-mgr and webase-sign
docker.mysql=1

# if [docker.mysql=1], mysql run in host (only works in [installDockerAll])
# run mysql 5.6 by docker
docker.mysql.port=23306
# default user [root]
docker.mysql.password=123456
#####################################################################

# Mysql database configuration of WeBASE-Node-Manager
mysql.ip=localhost
mysql.port=3306
mysql.user=root
mysql.password=修改为你的密码
mysql.database=db01

# Mysql database configuration of WeBASE-Sign
sign.mysql.ip=localhost
sign.mysql.port=3306
sign.mysql.user=root
sign.mysql.password=修改为你的密码
sign.mysql.database=db02

# if docker mysql disabled[docker.mysql=0] above

# H2 database name of WeBASE-Front (docker mode ignore this)
front.h2.name=webasefront
front.org=fisco

# WeBASE-Web service port
web.port=5000
# enable WeBASE-Web overview pages for mobile phone(docker mode not support h5 yet)
# (0: disable, 1: enable)
web.h5.enable=1

# WeBASE-Node-Manager service port
mgr.port=5001

# WeBASE-Front service port
front.port=5002

# WeBASE-Sign service port
sign.port=5004

# Node listening IP
node.listenIp=127.0.0.1
# Node p2p service port
node.p2pPort=30300
# Node channel service port
node.channelPort=20200
# Node rpc service port
node.rpcPort=8545

# Encrypt type (0: standard, 1: guomi)
encrypt.type=0
# ssl encrypt type (0: standard ssl, 1: guomi ssl)
# only guomi type support guomi ssl
encrypt.sslType=0

# Use existing chain or not (yes/no)
if.exist.fisco=no

### if build new chain, [if.exist.fisco=no]
# Configuration required when building a new chain
# Fisco-bcos version
fisco.version=2.8.0
# Number of building nodes (default value: 2)
node.counts=nodeCounts

### if using exited chain, [if.exist.fisco=yes]
# The path of the existing chain, the path of the start_all.sh script
# Under the path, there should be a 'sdk' directory where the SDK certificates (ca.crt, sdk.crt, node.key and gm directory(gm ssl)) are stored
fisco.dir=/data/app/nodes/127.0.0.1
# Node directory in [fisco.dir] for WeBASE-Front to connect
# example: 'node.dir=node0' would auto change to '/data/app/nodes/127.0.0.1/node0'
# Under the path, there is a conf directory where node certificates (ca.crt, node.crt and node.key) are stored
node.dir=node0

进入webase-deploy下执行如下命令

cd webase-deploy

进入webase-deploy文件夹

部署并启动所有服务      

  python3 deploy.py installAll

若过出现以下错误,则需要查看输入的用户名密码是否正确以及是否保存了修改后的文件

pymysql.err.OperationalError: (1045, "Access denied for user 'dbUsername'@'localhost' (using password: YES)")

对每个y/n都选择y

成功界面如下

如果发现新下载的文件依旧被锁之后可以执行以下命令

cd ../

sudo chmod -R 777 webase-deploy

除首次安装外,第二次运行时进入webase-deploy执行以下命令即可

python3 deploy.py startAll

启动一键部署的所有服务

各个子服务如下

启动FISCO-BCOS节点:      python3 deploy.py startNode
停止FISCO-BCOS节点:      python3 deploy.py stopNode
启动WeBASE-Web:          python3 deploy.py startWeb
停止WeBASE-Web:          python3 deploy.py stopWeb
启动WeBASE-Node-Manager: python3 deploy.py startManager
停止WeBASE-Node-Manager: python3 deploy.py stopManager
启动WeBASE-Sign:        python3 deploy.py startSign
停止WeBASE-Sign:        python3 deploy.py stopSign
启动WeBASE-Front:        python3 deploy.py startFront
停止WeBASE-Front:        python3 deploy.py stopFront

4.接下来的就是整理了各方资料以及踩的坑了

4.1打开浏览器,进入以下网址

http://{deployIP}:{webPort}
示例:http://localhost:5000

可以看到没有验证码,我们得做以下的操作

1.进入webase-node-ngr/conf目录下,找到application.yml文件

打开该文件,做以下两处修改

在数据库的url后加上&useSSL=false

 

将#log config后的代码改为

#log config
logging:
  level:
    com.webank.webase.node.mgr: debug

找到 webase-node-mgr/conf/log/log4j2.xml文件进行修改

做以下修改

<Loggers>
<Root level="debug">
  <AppenderRef ref="asyncInfo"/>
  <AppenderRef ref="asyncErrorLog"/>
</Root>
</Loggers>

 再进入websae-sign/conf/application.yml做以下修改

在数据库的url后加 &useSSL=false

重启mgr

cd webase-node-mgr

bash stop.sh && bash start.sh

 

如果

netstat -anlp | grep 5002

后该端口为监听,则做以下修改

iptables -I INPUT -p tcp --dport 5002 -j ACCEPT

iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

 iptables-save

 python3 deploy.py startFront

我们现在重新进入5000端口会发现验证码有了,也可以进中文的,我用英文示例了

默认账号为admin,默认密码为Abcd1234,首次登陆要求重置密码

修改密码后便可正常使用了

 webase官方文档

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值