Fisco Bcos区块链一(搭建单群组FISCO BCOS联盟链)
文章目录
-
一、基于区块链技术的第一款应用开发
-
- 1、建立基于FISCO BCOS框架的联盟链网络
-
- 配置必要的CentOS组件以满足开发需求
-
- 规划操作路径并获取必要的安装文件
-
- 构建由四个节点参与的联盟链系统
-
- 部署基于FISCO BCOS平台的区块链服务
-
- 监控运行状态并审查生成的日志记录
-
- 确保系统正常运行状态
区块链开荒
技术文档:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/index.html
一、搭建第一个区块链网络
1、搭建单群组FISCO BCOS联盟链
1. 安装centos依赖包
安装依赖包openssl、curl
yum install -y openssl openssl devel curl
代码解读
2. 创建操作目录, 下载安装脚本
# 创建操作目录
cd ~ && mkdir -p fisco && cd fisco
# 下载脚本
curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.9.1/build_chain.sh && chmod u+x build_chain.sh
代码解读
如果因为网络问题导致长时间无法下载build_chain.sh脚本,请尝试
# 下载脚本(使用国内下载源)
curl -#LO https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/FISCO-BCOS/FISCO-BCOS/releases/v2.9.1/build_chain.sh && chmod u+x build_chain.sh
代码解读
3. 搭建单群组4节点联盟链
在FISCO目录中运行以下命令以创建一个单群组、包含四台节点的一条FISCO链路,请注意核对机器上使用的30300~30303、20200~20203以及8545~8548端口是否已被占用
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545
代码解读
其中-l参数指定IP列表,并采用数组格式传递。1:4表示包含四个节点。-p参数指定起始端口号。后续三个节点的端口号依次递增,并分别对应于p2p_port、channel_port和jsonrpc_port。
当命令正常完成时,系统会显示'All completed'。若操作失败,请查看'nodes/build.log'文件中的错误信息。

4. 启动FISCO BCOS链
当执行部署脚本时,在~/fisco/目录下将创建链节点工作目录nodes/
-
该网络中各节点的工作目录位于127.0.0.1/路径上;
-
node0~3路径下包含了各节点的配置信息、公私钥文件以及启停操作脚本等重要数据;
- 其中nodeX/group.X.gensis文件位于nodeX/group.X.gensis位置上,默认情况下会自动创建;该文件用于存储群组内的统一配置信息
- nodeX/group.X.ini文件则位于nodeX/group.X.ini位置上,默认情况下会自动创建;它是群组内参数可变的关键文件
-
start_all.sh 和 stop_all.sh 分别标识为启动及停止所有节点的脚本文件;
-
download_bin.sh 用于执行 FISCO-BCOS 二进制程序的下载操作;
-
download_console.sh 的功能是获取区块链控制台的相关信息。

- cert/ 表示存储CA(公共)证书的目录路径;
- .crt文件:表示基于X.509 v3标准的数字安全证书文件;
- .key文件:用于注册加密的密钥存储文件;
- .cnf文件:系统运行所需的配置参数存储位置。

- 启动所有节点
bash nodes/127.0.0.1/start_all.sh
代码解读
如果启动成功,则系统将输出类似以下信息的响应。否则建议通过执行命令查看:使用netstat -an | grep tcp来检测机器的30300~30303、20200~20203以及8545~8548相关端口状态。

5. 检查进程
- 检查进程是否启动
ps -ef | grep -v grep | grep fisco-bcos
代码解读
通常情况下会显示出类似的结果; 当进程数量不是4时, 系统将未启动该服务(通常是因为相关端口已被占用)

6. 检查日志输出
- 如下,查看节点node0链接的节点数
tail -f ~/fisco/nodes/127.0.0.1/node0/log/log* | grep connected
代码解读
在常规情况下会持续不断地输出连接信息。通过分析输出结果可以看到node0与其他三个节点之间存在关联。

- 执行下面指令,检查是否在共识
tail -f ~/fisco/nodes/127.0.0.1/node0/log/log* | grep +++
代码解读
正常情况会不停输出++++Generating seal,表示共识正常。

到这你已经成功搭建了一个单群组四节点联盟链
