服務器搭建聯盟鏈程序
一、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.5和0.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.fiscoyes/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 首次登錄要求重置密碼
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/292417.html
標籤:區塊鏈
