官方地址:搭建第一个区块链网络 — FISCO BCOS v2.7.2 文档
1. 搭建单群组FISCO BCOS联盟链
安装依赖curl
sudo apt install -y openssl curl
## 创建操作目录 cd ~ && mkdir -p fisco && cd fisco ## 下载脚本 curl -#LO /FISCO-BCOS/FISCO-BCOS/releases/download/v2.8.0/build_chain.sh && chmod u+x build_chain.sh
搭建单群组4节点联盟链
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545
启动节点
bash nodes/127.0.0.1/start_all.sh
2. 配置及使用控制台
准备依赖
# ubuntu系统安装java sudo apt install -y default-jdk #centos系统安装java sudo yum install -y java java-devel获取控制台代码
cd ~/fisco && curl -LO /FISCO-BCOS/console/releases/download/v2.8.0/download_console.sh && bash download_console.sh
拷贝控制台配置文件
cp -n console/conf/ console/conf/
配置控制台证书
cp -r nodes/127.0.0.1/sdk/* console/conf/
启动并使用控制台
cd ~/fisco/console && bash
3. 部署及调用HelloWorld合约
编写HelloWorld合约,示例程序有提供合约的代码contracts/solidity/
控制部署
# 在控制台输入以下指令 部署成功则返回合约地址 [group:1]> deploy HelloWorld transaction hash: 0xd0305411e36d2ca9c1a4df93e761c820f0a464367b8feb9e3fa40b0f68eb23fa contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344
调用HelloWorld合约
# 查看当前块高
[group:1]> getBlockNumber
1
# 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
"Hello,World!"
]
---------------------------------------------------------------------------------------------
# 查看当前块高,块高不变,因为get接口不更改账本状态
[group:1]> getBlockNumber
1
# 调用set设置name
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS"
transaction hash: 0x7e742c44091e0d6e4e1df666d957d123116622ab90b718699ce50f54ed791f6e
---------------------------------------------------------------------------------------------
transaction status: 0x0
description: transaction executed successfully
---------------------------------------------------------------------------------------------
Output
Receipt message: Success
Return message: Success
---------------------------------------------------------------------------------------------
Event logs
Event: {}
# 再次查看当前块高,块高增加表示已出块,账本状态已更改
[group:1]> getBlockNumber
2
# 调用get接口获取name变量,检查设置是否生效
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
"Hello,FISCO BCOS"
]
---------------------------------------------------------------------------------------------
# 退出控制台
[group:1]> quit