您当前的位置: 首页 >  区块链
  • 0浏览

    0关注

    1477博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

区块链 fisco bcos 2.72 在多机器上部署多个docker节点 ubuntu

软件工程小施同学 发布时间:2021-05-13 14:30:55 ,浏览量:0

一、安装 1. 安装依赖 安装curl、openssl:
sudo apt-get update
sudo apt install -y curl openssl

 

2. 安装docker: (1)安装docker
# 更新包索引
sudo apt-get update
# 安装基础依赖库
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
# 添加Docker官方GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 添加docker仓库
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 更新包索引
sudo apt-get update
# 安装Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
(2)加入docker用户组
sudo groupadd docker
sudo usermod -aG docker $USER
(3)安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

 

3. 下载安装脚本
## 创建操作目录
cd ~ && mkdir -p fisco && cd fisco

## 下载脚本
curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.7.2/build_chain.sh && chmod u+x build_chain.sh

注解

如果因为网络问题导致长时间无法下载build_chain.sh脚本:

  • 多试几次
  • 也可以换成 curl -#LO https://gitee.com/FISCO-BCOS/FISCO-BCOS/raw/master/tools/build_chain.sh && chmod u+x build_chain.sh

 

 

4. 搭建单群组4节点区块链 (1)查看ip

每个机器一个节点

machine nameipfiscobcos_docker1192.168.64.137fiscobcos_docker2192.168.64.138fiscobcos_docker3192.168.64.139fiscobcos_docker4192.168.64.140

 

(2)生成区块链所有节点的配置

以下所有都在fiscobcos_docker1(192.168.64.137)机器操作

将节点信息写入到ipconf文件中

# 这里所有区块链节点均属于agencyA,并仅启动了群组1
# (注: 下面的ip信息需要根据真实的机器IP填写)
cat >> ipconf  getNodeVersion
ClientVersion{
    version='2.6.0',
    supportedVersion='2.6.0',
    chainId='1',
    buildTime='20200819 15:47:59',
    buildType='Darwin/appleclang/RelWithDebInfo',
    gitBranch='HEAD',
    gitCommitHash='e4a5ef2ef64d1943fccc4ebc61467a91779fb1c0'
}

# 得到其它节点
[group:1]> getPeers
[
    PeerInfo{
        nodeID='6d5e0b06cc540a2bf72f414e77d2c6d533832cbc0143ce9edc0da466c94c7c4738022cfc9a48ab4fa7e371a7205637f77b2dc19b94b913b450d05663ddcf8ed7',
        iPAndPort='127.0.0.1:30301',
        node='node1',
        agency='agency',
        topic='[
            _block_notify_1
        ]'
    },
    PeerInfo{
        nodeID='cd8f46dcdd5ec84f53b7869285825ca648bee4db1b1b8247a0ad51357f0a16035a55aa2626b37d9d477a7e57d30e640be0abf991ac92275129111651eae3c37d',
        iPAndPort='127.0.0.1:38922',
        node='node2',
        agency='agency',
        topic='[
            
        ]'
    },
    PeerInfo{
        nodeID='1cecce7910aa97c12281985f7fb938a51a6681663982fafbeceda61585f539f109770eee0354f4d678c6aece2639764d4a81851fa16532df4e6d5cf679b93d69',
        iPAndPort='127.0.0.1:30303',
        node='node3',
        agency='agency',
        topic='[
            
        ]'
    }
]

# 获取当前块高
[group:1]> getBlockNumber
0

# 部署和调用HelloWorld合约
[group:1]> deploy HelloWorld
transaction hash: 0x0e1f192c97a625471597a3483ec230604ff4bb3d22826d118e606ba64bdb0bf9
contract address: 0x302b771c6e7525dc16f945510c210bae0976ad64

[group:1]> call HelloWorld 0x302b771c6e7525dc16f945510c210bae0976ad64 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
    "Hello,World!"
]
---------------------------------------------------------------------------------------------

# 获取当前块高(块高增加1)
[group:1]> getBlockNumber
1

# 修改HelloWorld合约状态变量的值
[group:1]> call HelloWorld 0x302b771c6e7525dc16f945510c210bae0976ad64 set "hello, fisco"
transaction hash: 0xaa318a24b8a049778c7167bc2631eedadaeaba326a6cf17c79772036a0edc239
---------------------------------------------------------------------------------------------
transaction status: 0x0
description: transaction executed successfully
---------------------------------------------------------------------------------------------
Output
Receipt message: Success
Return message: Success
Return value: []
---------------------------------------------------------------------------------------------
Event logs
Event: {}

# 获取HelloWorld合约状态变量的值
[group:1]>  call HelloWorld 0x302b771c6e7525dc16f945510c210bae0976ad64 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
    "hello,fisco"
]
---------------------------------------------------------------------------------------------

# 获取当前块高
[group:1]> getBlockNumber
2

 

 

 

 

 

https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/tutorial/docker.html?highlight=docker

https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/tutorial/multihost.html

https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html#id8

关注
打赏
1665320866
查看更多评论
立即登录/注册

微信扫码登录

0.0397s