目录
环境要求
安装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
2. 安装FISCO-BCOS
- 切换到FISCO-BCOS目录下,执行FISCO-BCOS安装脚本,脚本自动下载并安装程序(大概要十分钟以上).
cd FISCO-BCOS
bash build.sh
- 检查是否安装成功
fisco-bcos --version
二、基础配置
1. 配置根证书
- 生成链的根证书
cd /mydata/FISCO-BCOS/tools/scripts/
bash generate_chain_cert.sh -o /mydata
2. 配置机构证书
- 生成机构(agency)证书
bash generate_agency_cert.sh -c /mydata -o /mydata -n test_agency
三、创世节点
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
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/
4. 验证创世节点启动
1. 验证进程
- 查看创世节点进程
ps -ef |grep fisco-bcos
2. 验证可共识
- 查看日志,查看打包信息
tail -f /mydata/node0/log/* |grep +++
四、增加节点
1. 准备
- 查看创世节点信息
bash node_info.sh -d /mydata/node0/ -o node0.info
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
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/
5. 验证节点启动
1. 验证进程
- 查看节点进程
ps -ef |grep fisco-bcos
2. 验证已连接
- 查看日志
cat /mydata/node1/log/* | grep "Connected"
3. 验证可共识
tail -f /mydata/node1/log/* |grep +++
五、web3sdk
说明:
使用web3sdk前,请确保:
- FISCO BCOS节点环境搭建完成
- java版本符合要求要求(jdk1.8+,推荐使用jdk8u141)
- 网络连通
检查web3sdk连接的FISCO BCOS节点channelPort是否能telnet通,若telnet不通,需要检查网络连通性和安全策略.(ping 127.0.0.1 <channelPort>
)
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
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
#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
- 获取god账号信息
cd /mydata/FISCO-BCOS/tools/scripts/god_info
vim godInfo.txt
- web3sdk客户端配置
cd /mydata/web3sdk/dist/conf
vim applicationContext.xml
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运行出错】 .