FISCO BCOS | 手工搭链并配置web3sdk


FISCO BCOS | 手工搭链并配置web3sdk_第1张图片

目录

FISCO BCOS | 手工搭链并配置web3sdk_第2张图片

环境要求

FISCO BCOS | 手工搭链并配置web3sdk_第3张图片

安装JDK1.8

参阅:教你如何在Ubuntu服务器上安装JDK1.8


一、程序部署

1. 获取代码

  • 新建一个目录/mydata
    mkdir -p /mydata && chmod 777 /mydata
    cd /mydata

  • clone 源码
    git clone -b master-1.3 https://github.com/FISCO-BCOS/FISCO-BCOS.git

FISCO BCOS | 手工搭链并配置web3sdk_第4张图片

2. 安装FISCO-BCOS

  • 切换到FISCO-BCOS目录下,执行FISCO-BCOS安装脚本,脚本自动下载并安装程序(大概要十分钟以上).
    cd FISCO-BCOS
    bash build.sh
FISCO BCOS | 手工搭链并配置web3sdk_第5张图片
  • 检查是否安装成功
    fisco-bcos --version
FISCO BCOS | 手工搭链并配置web3sdk_第6张图片

二、基础配置

1. 配置根证书

  • 生成链的根证书
    cd /mydata/FISCO-BCOS/tools/scripts/
    bash generate_chain_cert.sh -o /mydata
FISCO BCOS | 手工搭链并配置web3sdk_第7张图片

2. 配置机构证书

  • 生成机构(agency)证书
    bash generate_agency_cert.sh -c /mydata -o /mydata -n test_agency
FISCO BCOS | 手工搭链并配置web3sdk_第8张图片

三、创世节点

1. 生成创世节点

  • 生成节点的目录、配置文件、启动脚本、身份文件、证书文件并自动部署系统合约.
    bash generate_genesis_node.sh -o /mydata -n node0 -l 127.0.0.1 -r 8545 -p 30303 -c 8891 -d /mydata/test_agency/ -a test_agency

  • 记录下创世节点的RPC address
    RPC address: 127.0.0.1:8545

FISCO BCOS | 手工搭链并配置web3sdk_第9张图片

2. 启动创世节点

cd /mydata/node0
bash start.sh

sh stop.sh

3. 创世节点加入联盟

  • 让创世节点成为参与共识的第一个成员
    cd /mydata/FISCO-BCOS/tools/scripts/

  • 设置需要操作的链的RPC端口(此时链上只有一个创世节点),输入y回车确认
    bash set_proxy_address.sh -o 127.0.0.1:8545

  • 将创世节点注册入联盟中,参与共识
    bash register_node.sh -d /mydata/node0/
FISCO BCOS | 手工搭链并配置web3sdk_第10张图片

4. 验证创世节点启动

1. 验证进程
  • 查看创世节点进程
    ps -ef |grep fisco-bcos
2. 验证可共识
  • 查看日志,查看打包信息
    tail -f /mydata/node0/log/* |grep +++
FISCO BCOS | 手工搭链并配置web3sdk_第11张图片

四、增加节点

1. 准备

  • 查看创世节点信息
    bash node_info.sh -d /mydata/node0/ -o node0.info
FISCO BCOS | 手工搭链并配置web3sdk_第12张图片

2. 生成节点

  • 生成节点的目录、配置文件、启动脚本、身份文件、证书文件.
    bash generate_node.sh -o /mydata -n node1 -l 127.0.0.1 -r 8546 -p 30304 -c 8892 -e 127.0.0.1:30303,127.0.0.1:30304 -d /mydata/test_agency -a test_agency -f node0.info
FISCO BCOS | 手工搭链并配置web3sdk_第13张图片

3. 启动节点

  • 直接到节点文件目录下启动
    cd /mydata/node1
    bash start.sh

4. 节点加入联盟

  • 让节点成为参与共识的成员
    cd /mydata/FISCO-BCOS/tools/scripts/

  • 设置需要操作的链的RPC端口(若之前已设置,则无需重复设置)
    bash set_proxy_address.sh -o 127.0.0.1:8545

  • 将节点注册入联盟中,参与共识
    bash register_node.sh -d /mydata/node1/

FISCO BCOS | 手工搭链并配置web3sdk_第14张图片

5. 验证节点启动

1. 验证进程
  • 查看节点进程
    ps -ef |grep fisco-bcos
2. 验证已连接
  • 查看日志
    cat /mydata/node1/log/* | grep "Connected"
3. 验证可共识

tail -f /mydata/node1/log/* |grep +++

FISCO BCOS | 手工搭链并配置web3sdk_第15张图片

五、web3sdk

说明:
使用web3sdk前,请确保:

  • FISCO BCOS节点环境搭建完成
  • java版本符合要求要求(jdk1.8+,推荐使用jdk8u141)
  • 网络连通
    检查web3sdk连接的FISCO BCOS节点channelPort是否能telnet通,若telnet不通,需要检查网络连通性和安全策略.(ping 127.0.0.1 )

1. 安装依赖软件

  • 部署web3sdk之前需要安装git、dos2unix依赖软件:

git:用于拉取最新代码.
dos2unix: 用于处理windows文件上传到linux服务器时,文件格式无法被linux正确解析的问题.

apt install dos2unix -y
ln -s /usr/bin/todos /usr/bin/unxi2dos && ln -s /usr/bin/fromdos /usr/

2. 编译源码

cd /mydata
git clone https://github.com/FISCO-BCOS/web3sdk

FISCO BCOS | 手工搭链并配置web3sdk_第16张图片

cd web3sdk
dos2unix *.sh
. ./compile.sh

3. 配置文件

说明:

  • 配置web3sdk前,请确保参考 web3sdk编译文档 成功编译web3sdk
  • 配置web3sdk前,请先生成客户端证书,并将证书拷贝到web3sdk/dist/conf目录
1. 拷贝证书
  • SDK证书

cd /mydata/FISCO-BCOS/tools/scripts/
bash generate_sdk_cert.sh -d /mydata/test_agency

FISCO BCOS | 手工搭链并配置web3sdk_第17张图片
#tree test_agency/
test_agency/
|-- agency.crt
|-- agency.csr
|-- agency.key
|-- agency.srl
|-- ca-agency.crt
|-- ca.crt
|-- cert.cnf
`-- sdk
    |-- ca.crt
    |-- client.keystore
    |-- keystore.p12
    |-- sdk.crt
    |-- sdk.csr
    |-- sdk.key
    |-- sdk.param
    |-- sdk.private
    `-- sdk.pubkey

cp -r /mydata/test_agency/sdk/* /mydata/web3sdk/dist/conf

2. 配置java客户端相关信息
  • 获取系统合约代理地址
    cd /mydata/node1
    vim config.json
FISCO BCOS | 手工搭链并配置web3sdk_第18张图片
  • 获取god账号信息
    cd /mydata/FISCO-BCOS/tools/scripts/god_info
    vim godInfo.txt
  • web3sdk客户端配置
    cd /mydata/web3sdk/dist/conf
    vim applicationContext.xml
FISCO BCOS | 手工搭链并配置web3sdk_第19张图片
3. 测试是否配置成功
  • 测试web3sdk与节点连接是否正常
    cd /mydata/web3sdk/dist
    java -cp 'conf/:apps/*:lib/*' org.bcos.channel.test.TestOk

在web3sdk/dist目录下调用TestOk,非国密版web3sdk输出 =====INIT ECDSA KEYPAIR From private key=== 等提示,说明web3sdk与节点连接正常,否则请参考 faq【dist/bin/web3sdk运行出错】 .


你可能感兴趣的:(FISCO BCOS | 手工搭链并配置web3sdk)