hyperledger explorer主要是为Hyperledger的区块链网络搭建可视化的环境,可以通过浏览器查看网络中的信息,包括网络拓扑、区块信息、链码信息等等,本文是在fabric v1.4.4版本部署,操作系统为CentOS 7, 部署fabric可以参考https://www.jianshu.com/p/090307969c0f,这里就不重复说明了。
hyperledger explorer源码地址:https://github.com/hyperledger/blockchain-explorer
依赖:Nodejs(8.11.x) PostgreSQ Jq
PS:Nodejs不要下载最新下载8.11.x版本即可,我开始下载最新的导致编译一堆问题。hyperledger explorer的github里面有介绍不同版本的依赖限制。
1、安装Nodejs
1.1、下载NodeJs
wget https://nodejs.org/download/release/v8.11.4/node-v8.11.4-linux-x64.tar.gz
tar -zxvf node-v8.11.4-linux-x64.tar.gz
mv node-v8.11.4-linux-x64 node-v8.11.4
1.2、配置NodeJs环境
打开配置文件
vi /etc/profile
末尾添加以下配置
export NODE_HOME=/opt/node-v8.11.4
export PATH=PATH
使配置立即生效
source /etc/profile
2、安装jq
yum install jq
3、安装gcc-c++(编译需要)
yum install -y gcc-c++
4、配置PostgreSQ
4.1、安装PostgreSQL客户端\安装PostgreSQL服务端
PostgreSQL 10使用yum存储库
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat10-10-2.noarch.rpm
yum install -y postgresql10-server postgresql10
4.2、 可选地初始化数据库并启用自动启动:
/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl enable postgresql-10 && systemctl start postgresql-10
4.3 修改密码加密方式以及访问限制
vi /var/lib/pgsql/10/data/postgresql.conf
修改#listen_addresses = 'localhost' 为 listen_addresses='*'
vi /var/lib/pgsql/10/data/pg_hba.conf
添加 host all all 0.0.0.0/0 md5
systemctl restart postgresql-10
4.4 初始数据库及其相关表
登录数据库,执行后提示符变为 'postgres=#'
psql -U postgres
设置postgres用户密码(!!!这个密码要注意下不能包含@符号)
ALTER USER postgres WITH PASSWORD 'postgres';
创建数据库新用户,如 root(由于我虚拟机使用root登录,执行初始化脚本时默认使用root帐户,所以先创建一个root用户以及数据,并分配管理员权限)
CREATE USER root WITH PASSWORD 'root';
创建用户数据库,如root:
CREATE DATABASE root OWNER root;
将root数据库的所有权限都赋予root:
GRANT ALL PRIVILEGES ON DATABASE root TO root;
--对用户授权-管理员权限
ALTER USER root superuser ;
退出数据库
\q
vi blockchain-explorer/app/explorerconfig.json
这里面有对应 postgresql的库名以及帐号
cd blockchain-explorer/app/persistence/fabric/postgreSQL/db
执行数据库初始化脚本 输入root密码即可
./createdb.sh
5、编辑并部署blockchain-explorer项目
5.1 配置证书路径
cd /opt/hyperledger/blockchain-explorer
将fabric-path 全部改成你本地fabric-samples所在路径
vi app/platform/fabric/config.json
5.2 编译项目
cd blockchain-explorer
npm install --unsafe-perm -d
npm install
cd blockchain-explorer/app/test
npm install
npm run test
cd blockchain-explorer/client/
npm install --unsafe-perm -d
npm install
npm run test -- -u --coverage
npm run build --unsafe-perm -d
cd blockchain-explorer
6、启动项目
./start.sh
输入 ip:8080 即可访问
有兴趣可以加QQ群一起学习:208791689