Webase的搭建

技术分享
1301 3

在使⽤部署WeBASE系统前请确保物理机已具备以下环境与准备条件,建议使⽤操作系统为CentOS 7.2+、Ubuntu16.04及以上版本。一键部署脚本将自动安装openssl, curl, wget, git, nginx, dos2unix相关依赖项。

前提条件

环境版本
JavaOracle JDK 8 至 14
MySQLMySQL-5.6及以上
PythonPython3.6及以上
PyMySQL

点击实训环境按钮,进入到本节课程的实训环境中。

安装Java环境

创建新的⽂件夹,安装Java 8或以上的版本,推荐JDK8- JDK13版本,将下载的jdk放在software⽬录. 从Oracle官⽹选择 Java 8或以上的版本下载,例如下载jdk-8u341-linux-x64.tar.gz。官⽹链接如下: https://www.oracle.com/technetwork/java/javase/downloads/index.html) 下⾯以Ubuntu18.04操作系统为例演示Java安装过程。

步骤一步:创建目录

 mkdir /software 

步骤⼆: 将下载的jdk移⼊/software⽬录,并解压jdk

cd /software 
cp /home/fisco/jdk-8u341-linux-x64.tar.gz /software
tar -zxvf jdk-8u341-linux-x64.tar.gz 

步骤三 :配置Java环境,编辑/etc/profile⽂件, 打开⽂件以后 将下⾯三句输⼊到⽂件⾥⾯并保存退出 。

 vim /etc/profile 

export JAVA_HOME=/software/jdk1.8.0_341 #这是⼀个⽂件⽬ 录,⾮⽂件

export PATH=$JAVA_HOME/bin:$PATH 

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

步骤四:⽣效profile

source /etc/profile

步骤五:查询Java版本,出现的版本是⾃⼰下载的版本,则安装成功。

java -version 

java version "1.8.0_341" Java(TM) SE Runtime Environment (build 1.8.0_281- b09) Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode)  

安装mysql

以root用户执行命令

apt-get install software-properties-common
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
sudo apt install mariadb-server-10.3 -y

执行mysql ––version命令,若显示如下则安装成功

mysql  Ver 14.14 Distrib 5.7.16, for debian-linux-gnu (x86_64) using  EditLine wrapper

在第一次安装Mysql时,需要去设置root账户的密码:

步骤一:修改/etc/mysql/my.cnf文件

sudo vim /etc/mysql/my.cnf 

在文件最后添加如下两行内容

[mysqld]
skip-grant-tables 

步骤二:启动Mysql服务

service mysql start

步骤三:进入mysql,设置root用户密码

输入"mysql"进入到mysql数据库操作界面,运行下面的SQL语句来修改密码

 update mysql.user set authentication_string=PASSWORD('123456') where user='root'; 
 USE mysql;
 UPDATE user SET plugin='mysql_native_password' WHERE User='root';
 update mysql.user set authentication_string=PASSWORD('123456') where user='root';
 flush privileges; 

输入"quit"退出Mysql操作界面

mysql> quit
Bye
root@VM-12-12-ubuntu:/etc/mysql# 

安装Python

Ubuntu18.04⾃带Python3版本为3.6.9,若使⽤其他操作系 统,请确保Python版本⾼于3.6。

安装PyMySQL

sudo apt-get install -y python3-pip 

sudo pip3 install PyMySQL 

安装并启动nginx

sudo apt install nginx 

nginx 

启动FISCO BCOS⽹络

具体步骤见第二章FISCO BCOS的搭建小节
第一步. 安装依赖

开发部署工具 build_chain.sh 脚本依赖于openssl, curl,使用以下命令安装opensslcurl

apt install -y openssl curl

第二步. 搭建单群组4节点联盟链
fisco目录下创建一个bin目录,并把fisco-bcos文件移动到bin目录下,执行下面的指令,生成一条单群组4节点的FISCO链:

cd /home/fisco
mkdir bin
mv fisco-bcos bin
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545 -e bin/fisco-bcos

其中-p选项指定起始端口,分别是p2p_port,channel_port,jsonrpc_port.

执行上述步骤的时候可能会出现权限不足的情况,此时我们需要进入到bin目录下执行命令:

chmod +x fisco-bcos

命令执行成功会输出:

Checking fisco-bcos binary...
Binary check passed.
==============================================================
Generating CA key...
==============================================================
Generating keys ...
Processing IP:127.0.0.1 Total:4 Agency:agency Groups:1
==============================================================
Generating configurations...
Processing IP:127.0.0.1 Total:4 Agency:agency Groups:1
==============================================================
[INFO] Execute the download_console.sh script in directory named by IP to get FISCO-BCOS console.
e.g.  bash /home/ubuntu/fisco/nodes/127.0.0.1/download_console.sh
==============================================================
[INFO] FISCO-BCOS Path   : bin/fisco-bcos
[INFO] Start Port        : 30300 20200 8545
[INFO] Server IP         : 127.0.0.1:4
[INFO] Output Dir        : /home/ubuntu/fisco/nodes
[INFO] CA Key Path       : /home/ubuntu/fisco/nodes/cert/ca.key
==============================================================
[INFO] All completed. Files in /home/ubuntu/fisco/nodes
复制代码

第三步. 启动FISCO BCOS链
bash为linux系统自带的命令处理工具,下面命令由bash解析执行脚本,启动fisco区块链:

bash nodes/127.0.0.1/start_all.sh

启动成功会输出类似下面内容的响应。否则请使用netstat -an | grep tcp检查机器的30300~30303, 20200~20203, 8545~8548端口是否被占用。
启动成功显示:

try to start node0
try to start node1
try to start node2
try to start node3
 node1 start successfully
 node2 start successfully
 node0 start successfully
 node3 start successfully

⼀键部署WeBASE

完成如上操作后准备⼯作完结,可以开始部署WeBASE

解压安装包文件

unzip webase-deploy.zip 

cd webase-deploy 

修改webase-deploy项⽬的common.properties⽂件。

vim common.properties 

第⼀处改动为将mysql相关的ip全部改为127.0.0.1,⽤户名改成 root,密码改为配置的123456.

#Mysql database configuration of WeBASE-NodeManager

mysql.ip=127.0.0.1
mysql.port=3306
mysql.user=root
mysql.password=123456
mysql.database=webasenodemanager

\# Mysql database configuration of WeBASE-Sign
sign.mysql.ip=127.0.0.1
sign.mysql.port=3306
sign.mysql.user=root
sign.mysql.password=123456
sign.mysql.database=webasesign

第⼆处改动为将监听参数"if.exist.fisco"改为yes,按照官方文档档说明:

  • 当配置”yes”时,需配置已有链的路径fisco.dir。路径下要存在sdk目录,sdk目录中包含ca.crt, sdk.crt, sdk.key及gm目录,gm目录中包含国密SSL所需证书,包含gmca.crt、gmsdk.crt、gmsdk.key、gmensdk.crt和gmensdk.key。
  • 当配置”no”时,需配置节点fisco版本和节点安装个数,搭建的新链默认两个群组。

随之要改动的为fisco.dir和node.dir两个参数分别指向FISCO BCOS⽹络数据存储的地址 (按照实际情况修改)。

fisco.dir=/home/fisco/nodes/127.0.0.1 

node.dir=/home/fisco/nodes/127.0.0.1/node0 

第三处改动修改node监听的端⼝,由于我们在启动FISCO BCOS节点时对端⼝作了改动,所以这⾥的配置也要与之匹配 。

# Node p2p service port 

node.p2pPort=30300 

# Node channel service port 

node.channelPort=20200 

# Node rpc service port 

node.rpcPort=8545 

完成common.properties配置后,可以部署所有服务,命令如下:

 python3 deploy.py installAll  

当有如下输出时表示安装成功:

 ============== Starting WeBASE-Web ============== 

============== WeBASE-Web Started ============== 

============== Init Front for Mgr start... ============== 

== 100% ============== Init Front for Mgr end... ============== ==================================================== ======== 

============== deploy has completed ============== ====================================================

 ======== ============== webase-web version v1.4.3 ======== 

============== webase-node-mgr version v1.4.3 ======== 

============== webase-sign version v1.4.3 ======== 

============== webase-front version v1.4.3 ======== ==================================================== ======== 

停止所有服务命令:

python3 deploy.py stopAll 

平台访问

可以访问WeBASE管理平台进⾏确认是否部署成功,地址:htt p://localhost:5000,初始账户名:admin,密码:Abcd1234,登录后会要求修改初始密码。

最后更新 2023-08-21
评论 ( 3 )
OωO
隐私评论
  1. Li

    为什么我在用完 python3 deploy.py installAll 命令后 一直在下载一个东西 webase-sign.zip ,而且速度非常之慢,要下6个小时

    6个月前河南省南阳市回复
    1. @Li

      我这里有shell脚本可以一键部署用的国内源下载的,你需要的话可以联系我给你用

      6个月前江苏省徐州市回复
    2. 北北
      @Li

      我估计是你网络问题,正常几分钟就下载好了,他官方是拉去的github上的源

      6个月前江苏省徐州市回复