构建区块链allInOne容器镜像

本文介绍了如何在Linux服务器上搭建FISCOBCOS区块链的单机群4节点联盟链,包括安装、构建和配置过程。通过部署在容器中,实现了本地调试环境。此外,还详细阐述了配置控制台和安装WeBase-Front以进行节点管理和操作。最后,提到了构建基于CentOS的Docker镜像,以便运行区块链服务并对外暴露必要的端口。
摘要由CSDN通过智能技术生成

工作中需要用到区块链的能力,FiscoBcos具备以下优势,

  1. 安全性高:BCOS采用多层次的安全机制,包括密码学算法、访问控制、身份验证和审计跟踪等,确保数据和交易的安全性。
  2. 高效性:BCOS采用了高效的共识机制,可以在短时间内完成交易确认,同时具有高可扩展性,可以支持大规模的交易和用户量。
  3. 灵活性:BCOS支持多种编程语言和智能合约,可以满足不同应用场景的需求。
  4. 开放性:BCOS是一个开放的平台,可以与其他区块链平台和系统进行互操作,实现资产和数据的跨平台流通。
  5. 可信度高:BCOS采用了区块链技术,所有交易数据都被记录在区块链上,不可篡改,可以保证交易的可信

我们通过部署作为内部开发测试环境。为了便于开发,我将默认所需的4个节点都打包到一个容器中,可作为本地调试环境。容器应用:

 

区块链应用部署

1. 在linux服务器上搭建单机群4节点联盟链

以下步骤,用来安装和构建FISCO-BCOS区块链。首先它会安装OpenSSL和OpenSSL开发库,然后它会创建一个名为fisco的文件夹,并在其中下载build_chain.sh文件,并给它添加可执行权限。最后,它会使用build_chain.sh脚本在本地构建FISCO-BCOS网络,其中包括127.0.0.1:4的节点,以及30300,20200,8545的端口。

yum install -y openssl openssl-devel
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
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545

搭建好的联盟链,所有程序文件会在 fisco目录中。这些程序文件可以直接打包到容器中,

# 启动4个节点
bash nodes/127.0.0.1/start_all.sh
# 检查进程是否已经启动
ps -ef | grep -v grep | grep fisco-bcos
# 检查日志输出
tail -f nodes/127.0.0.1/node0/log/log*  | grep connected

如果一切都正常执行,那么我么就得到了一个可以任意折腾的区块链。

2. 配置控制台

在控制台链接FISCO BCOS节点,实现查询区块链状态、部署调用合约等功能,能够快速获取到所需要的信息。

控制台部署过程:

sudo yum install -y java java-devel
cd ~/fisco && curl -LO https://github.com/FISCO-BCOS/console/releases/download/v2.9.2/download_console.sh && bash download_console.sh
# 最新版本控制台使用如下命令拷贝配置文件
cp -n console/conf/config-example.toml console/conf/config.toml
cp -r nodes/127.0.0.1/sdk/* console/conf/

启动并使用控制台:

cd fisco/console && bash start.sh
# 看到welcome界面,说明启动成功。

3. WeBase-Front安装

WeBASE-Front是和FISCO-BCOS节点配合使用的一个子系统。此分支支持FISCO-BCOS 2.0以上版本,集成web3sdk,对接口进行了封装,可通过HTTP请求和节点进行通信。另外,具备可视化控制台,可以在控制台上开发智能合约,部署合约和发送交易,并查看交易和区块详情。还可以管理私钥,对节点健康度进行监控和统计。

wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.4/webase-front.zip
unzip webase-front.zip
cd webase-front
# 将节点所在目录nodes/${ip}/sdk下的所有文件拷贝到当前conf目录,供SDK与节点建立连接时使用
cp -r nodes/127.0.0.1/sdk/* ./conf/
# 启动
bash start.sh
# 停止 
bash stop.sh
# 检查 
bash status.sh 

到此,我们所需要的所有区块链应用都已经在一台主机上进行了搭建,

4. 构建镜像

镜像基于CentOS 7.9.2009,安装了OpenSSL、OpenSSL-devel和Java,并将/fisco目录添加到镜像中。在/fisco目录中的WebService/bin目录中工作,将端口号20200-20203、30300-30303、8545-8548、8050和5002暴露出来。具体来说,这个Dockerfile的构建过程包括以下步骤:

  1. 从Docker Hub上拉取CentOS 7.9.2009的镜像作为基础镜像。
  2. 在基础镜像上使用yum命令安装OpenSSL、OpenSSL-devel和Java。
  3. 将当前目录下的/fisco目录添加到镜像中。
  4. 设置工作目录为/fisco/WebService/bin目录。
  5. 使用EXPOSE命令将端口号20200-20203、30300-30303、8545-8548、8050和5002暴露出来,这些端口用于在容器内部进行通信和操作。

最终,根据这个Dockerfile构建的镜像可以用于运行/fisco目录下的WebService服务,同时容器内部可以通过上述暴露的端口与外部进行通信。

FROM centos:7.9.2009
RUN yum install -y openssl openssl-devel java
ADD ./fisco /fisco
WORKDIR /fisco/WebService/bin
EXPOSE 20200-20203 30300-30303 8545-8548 8050 5002
# ENTRYPOINT ["/fisco/run.sh"]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值