Fisco Bcos学习(环境搭建)

服务器搭建联盟链过程

一、docker方式部署单群组4节点区块链

1、安装依赖
1)安装curl、openssl

yum install -y curl openssl openssl-devel

2)下载安装脚本

curl -#LO https://gitee.com/FISCO-BCOS/FISCO-BCOS/raw/master/tools/build_chain.sh && chmod u+x build_chain.sh

3)搭建单群组4节点区块链

bash build_chain.sh -d -l 127.0.0.1:4 -p 30300,20200,8545

在fisco目录下执行上面的指令,生成一条单群组4节点的区块链。 请确保机器的3030030303,2020020203,8545~8548端口没有被占用,也可以通过-p参数指定其他端口。命令执行成功会输出All completed。如果执行出错,请检查nodes/build.log文件中的错误信息。

4)启动区块链

执行nodes/127.0.0.1/start_all.sh

启动时,会查找本地是否存在FISCO-BCOS对应版本的节点镜像,不存在则从docker hub下载。

5)检查容器

检查容器是否正常:docker ps -a | egrep fiscobcos 容器节点为UP时说明节点启动正常。

6)查看节点

可以通过检查日志来确认节点的p2p连接数目、共识是否正常。

  • 查看节点node0连接的节点数(正常情况会不停地输出连接信息,从输出可以看出node0与另外3个节点有连接。)

    tail -f nodes/127.0.0.1/node0/log/log* | grep connected

  • 检查共识(正常情况会不停输出++++Generating seal,表示共识正常。)

    tail -f nodes/127.0.0.1/node0/log/log* | grep +++

二、下载和使用控制台

1、准备依赖
安装Java

下载Java:https://link.juejin.cn/?target=https%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html

上传到服务器解压:tar -zxvf jdk-8u301-linux-x64.tar.gz

配置环境变量:

vi /etc/profile

export JAVA_HOME=/home/java/jdk1.8.0_301
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
2、启动并使用控制台

注:如果有上述一、docker方式部署单群组4节点区块链操作,则进入nodes/127.0.0.1/执行./download_console.sh就可。

download_console.sh脚本提供获取所有版本的控制台的功能,默认获取2.6+版本的控制台,可通过如下命令获取最新的download_console.sh脚本:

mkdir -p ~/fisco && cd ~/fisco && curl -#LO https://gitee.com/FISCO-BCOS/console/raw/master/tools/download_console.sh
-c选项

指定下载的控制台版本号,默认拉取最新版本控制台(2.6+版本),若基于Web3SDK开发应用,需下载1.x版本的控制台将solidity代码转换为java代码,可通过该选项指定下载的控制台版本,下载1.2.0版本控制台的示例如下:

# 下载1.2.0版本的控制台
$ bash download_console.sh -c 1.2.0
-v选项

控制台1.1.0版本开始支持使用0.6版本的solidity编译器(FISCO BCOS底层需要升级到v2.5.0及其以上版本),-v选项指定下载的控制台基于的solidity编译器版本,目前支持0.4, 0.50.6三个版本的solidity编译器,默认使用0.4.25版本编译器。 下载支持solidity 0.6版本的控制台示例如下:

# 下载支持0.6.0版本solidity编译器的控制台
$ bash download_console.sh -v 0.6

打开console/conf目录,复制简单配置为配置:cp config-example.toml config.toml

拷贝证书文件:cp /home/fisco/nodes/127.0.0.1/sdk/* /home/fisco/nodes/127.0.0.1/console-0.6/conf/

部署自带HelloWorld.sol合约:

#控制台目录启动控制台
./start.sh
#部署用例
deploy HelloWorld.sol

三、一键部署WeBase

环境 版本
Java JDK 8 至JDK 14
MySQL MySQL-5.6及以上
Python Python3.6及以上
PyMySQL
1、准备依赖
1)安装MySQL
  • 下载mysql的repo源

    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

  • 下载后安装rpm包

    rpm -ivh mysql-community-release-el7-5.noarch.rpm

  • 安装mysql

yum -y install mysql-server

  • 配置mysql
#操作mysql库
use mysql;
#更改user表设置root账户密码
update user set password=password(‘qwer1234‘) where user=‘root‘;
#刷新
flush privileges;
#开启远程连接
grant all privileges on *.* to 'root'@'%' identified by 'qwer1234';
  • 启动mysql

    service mysqld start

  • 设置开机自启

    systemctl enable mysqld.service

  • 停止mysql

    service mysqld stop

2)安装Python3.6
  • 查看python3版本

    python3 --version

  • 安装python

    yum install -y python36

3)安装PyMySQL
  • 安装

    pip3 install PyMySQL -i https://pypi.douban.com/simple

2、拉取部署脚本
  • 获取部署安装包

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

  • 解压安装包

    unzip webase-deploy.zip

3、修改配置
  • 配置mysql连接(common.properties)
# 节点管理子系统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
  • 配置是否使用已有链

    if.exist.fisco yes/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
# 前置所连接节点的绝对路径
# 节点路径下要存在conf文件夹,conf里存放节点证书(ca.crt、node.crt和node.key)
node.dir=/data/app/nodes/127.0.0.1/node0
  • 执行部署命令

    python3 deploy.py installAll

  • 启动|停止

    python3 deploy.py startAll | python3 deploy.py stopAll

  • 浏览器访问

    http://{IP}:{port} |http://172.16.0.99:5000

    默认 admin|Abcd1234 首次登录要求重置密码

你可能感兴趣的:(fisco,bcos,docker,mysql,python,区块链,智能合约)