### nodejs
下载nodejs二进制包:
wget https://nodejs.org/dist/v12.16.2/node-v12.16.2-linux-x64.tar.xz 解压xz数据包:
xz -d node-v12.16.2-linux-x64.tar.xz 解压tar数据包:
tar -C /usr/local/ -xvf node-v12.16.2-linux-x64.tar 更改目录名:
mv node-v12.16.2-linux-x64 node 添加环境变量:
export PATH=$PATH:/usr/local/node/bin 查看版本信息:
node -v ### jq
yum install epel-release
yum install jq ### PostgreSQL
# Install the repository RPM:
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # 下载服务端:
yum install -y postgresql12-server 初始化数据库并设置开机自启动:
/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl enable postgresql-12 启动服务:
systemctl start postgresql-12 验证是否安装成功:
rpm -aq| grep postgres (正常返回版本信息即可) 修改用户密码:

 su - postgres 切换用户,执行后提示符会变为 '-bash-4.2$'
 psql -U postgres 登录数据库,执行后提示符变为 'postgres=#'
 ALTER USER postgres WITH PASSWORD 'postgres'; 设置postgres用户密码为postgres
 \c databasename 进入数据库
 \d 查看表
 \d tablename 查看具体表结构
 \q 退出数据库
 exit 退出命令行界面


开启远程访问:
vi /var/lib/pgsql/12/data/postgresql.conf
修改#listen_addresses = 'localhost' 为 listen_addresses='*'
当然,此处‘*’也可以改为任何你想开放的服务器IP 信任远程连接:
vi /var/lib/pgsql/12/data/pg_hba.conf
修改如下内容,信任指定服务器连接
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust 重启服务:
systemctl restart postgresql-12 ### Explorer 下载
cd /opt/gopath/src/github.com/hyperledger
git clone https://github.com/hyperledger/blockchain-explorer.git 我们使用默认版本,进行数据库创建:
cd blockchain-explorer/app
vi explorerconfig.json
修改配置如下:
"postgreSQL": { "host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "postgres",
"passwd": "postgres"
}
运行创建数据库的脚本:
cd persistence/fabric/postgreSQL
chmod -R 775 db/
cd db
./createdb.sh 查看数据库状态指令:
sudo -u postgres psql -c '\l' sudo -u postgres psql fabricexplorer -c '\d' # 定义fabric网络连接参数
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/platform/fabric/config.json # 设置enableAuthentication属性false,用于关闭登录认证
{
"network-configs": {
"first-network": {
"name": "firstnetwork",
"profile": "./connection-profile/first-network.json",
"enableAuthentication": false
}
},
"license": "Apache-2.0"
} # 继续进行设置(Fabric网络环境要处于正常启动的状态,不然下述路径的文件是不存在的)
cd /opt/gopath/src/github.com/hyperledger/blockchainexplorer/app/platform/fabric/connection-profile/first-network.json
重点设置如下几项: "adminPrivateKey": {
"path": "/opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/priv_sk"
}
-------------------------------------分隔符(下同)-----------------------------------------
"signedCert": {
"path": "/opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem"
}
=========================================================================================
"tlsCACerts": {
"path": "/opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
}
-----------------------------------------------------------------------------------------
"tlsCACerts": {
"path": "/opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network/organizations/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem"
}
### 需要说明一点,这两个 "tlsCACerts" 并不在一个字典中,配置时要特别注意,还有就是以自己的文件路径为主。 # Build Hyperledger Explorer cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
npm install
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer/client
npm install
npm run build 如果遇到 root没权限,则需要使用非安全模式,顺便输出下详细日志如下:
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
npm install --unsafe-perm -d
cd client/
npm install --unsafe-perm -d
npm run build --unsafe-perm -d
!!!注意,如果中间出错,重新安装时先要删除node_modules文件夹,client里的也需要; # 报错提示信息(在执行 npm run build --unsafe-perm -d 后出现的error信息)
ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
# 错误原因
react环境搭建时,在 Node 中通过 JavaScript 使用内存时只能使用部分内存(64位系统下约为1.4 GB,32位系统下约为0.7 GB),而我的虚拟机环境初始化内存为1G,导致JavaScript内存溢出
# 解决方案
查询过很多网上的文档,建议都是添加指定内存大小的参数,反复尝试多次后无果,最后修改虚拟机内存设置为3G后,重新执行打包指令,成功(大家可以尝试下2G)。 运行
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
./start.sh
./stop.sh 停止 浏览器中输入当前IP地址,端口号为 8080 官方文档:
https://github.com/hyperledger/blockchain-explorer/tree/v1.1.2

当然,每个人安装过程中遇到的问题不同,解决方法也因人而异,请大家辩证的对待。

hyperledger explorer 环境搭建的更多相关文章

  1. Hyperledger Fabric 环境搭建(2)

    上一篇https://www.cnblogs.com/xdyixia/p/11738096.html 介绍了Hyperledger Fabric环境中各种软件安装和源码编译,这一篇介绍快速运行一个简单 ...

  2. 【推荐】 HyperLedger Fabric环境搭建、测试及注意事项 [详尽指导] [亲测有效]

    系统:Ubuntu16.04 LTS 一.环境准备 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被 ...

  3. Hyperledger Fabric 环境搭建(1)

    1,Fabric的程序模块组成 Fabric不是一个单独的程序而是由一组模块组成,这些模块中的每一个都是一个可独立运行的可执行文件. (1)peer 主节点模块,负责存储区块链数据,运行维护链码: ( ...

  4. 基于docker的 Hyperledger Fabric 多机环境搭建(上)

    环境:ubuntu 16.04 Docker  17.04.0-ce go 1.7.4 consoul v0.8.0.4 ======================================= ...

  5. 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)

    目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...

  6. (一)Hyperledger Fabric 1.1安装部署-基础环境搭建

    在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS ...

  7. HyperLedger Fabric 1.4 基础环境搭建(7)

    学习了前面几章理论知识后,本章开始介绍实践操作,先介绍Fabric基础环境搭建,采用的操作系统为Centos 7 64位,依次介绍Docker安装.Docker-Compose安装.GO语言环境安装. ...

  8. Hyperledger Fabric1.4环境搭建过程

    简单记录一下fabric版本1.4的环境搭建,运行环境为Ubuntu18.04,其中一些内容是根据官方文档整理的,如有错误欢迎批评指正. 本文只介绍最简单的环境搭建方法,具体的环境搭建解析在这里深入解 ...

  9. Hyperledger Fabric 1.4 快速环境搭建

    自己的硕士研究方向和区块链有关,工程上一直以IBM的Hyperledger Fabric为基础进行开发,对该项目关注也有两年了.目前迎来了Hyperledger Fabric v1.4,这也是Fabr ...

  10. Hyperledger Fabric1.4 网络环境搭建步骤

    1.  外部访问虚拟机: 安装ssh apt-get install openssh-server openssh-client 2.  安装vim sudo apt install vim 3.  ...

随机推荐

  1. GoLang中signal.Notify函数用法

    官方描述: Notify函数让signal包将输入信号转发到c.如果没有列出要传递的信号,会将所有输入信号传递到c:否则只传递列出的输入信号. signal包不会为了向c发送信息而阻塞(就是说如果发送 ...

  2. 微信消息自动推送(评论区有我改好的模板及exe一键推送文件)

    方案1:腾讯云函数(企业ID+应用ID和密钥(发送密钥得下企业微信app)+自己云函数的IP固定IP详情方法在下图) 推荐使用多图,因为内容会显示的丰富(所有图片文字都可以自定义 都在评论区下面的模板 ...

  3. Kotlin相关语法

    1.Kotlin的匿名函数 { val  a = 1 val b = 2 a+b } 就是一个不带名字的函数体 2.Kotlin的函数类型 函数类型:用来声明一个函数参数和返回值形式的 特殊数据类型声 ...

  4. WeNet调试

    运行: 参照:markdown 问题: CMake Error: Error: generator : Ninja Ninja:提高构建速度 wenet/runtime/libtorch/fc_bas ...

  5. 【C学习笔记】day5-2 写代码可以在整型有序数组中查找想要的数字, 找到了返回下标,找不到返回-1.(折半查找)

    #include <stdio.h> #include <stdlib.h> int find(int s) { int n = 0; scanf_s("%d&quo ...

  6. List循环问题

    list循环时的问题,报错,称找不到该字段属性,原因如下: 1.字段名与toString里不匹配: 2.首字母大写了: 原回答:https://blog.csdn.net/qq_42671193/ar ...

  7. js 加密和解密

    // aes对称加密 const CryptoJS = require('crypto-js'); //引用AES源码js const key = CryptoJS.enc.Utf8.parse(&q ...

  8. 微服务笔记之Eureka(1)

    1.Eureka是什么? Eureka由Netflix开源,并被Pivatal集成到SpringCloud体系中,它是基于 RestfulAPI 风格开发的服务注册与发现组件,它是一个服务注册中心. ...

  9. vdom diff

    其实diff的核心在于两点: 比对(diff的运算过程) 修改(diff的返回结果,输出生成的patch并操作) 树的BFS(广度优先遍历)/DFS(深度优先遍历),需要O(N)的时空复杂度 传统di ...

  10. 快速使用时序数据库InfluxDB

    快速使用时序数据库InfluxDB InfluxDB是一款优秀的时间序列数据库,适合存储设备性能.日志.物联网传感器等带时间戳的数据. 1. InfluxDB主要特性 InfluxDB也就是TSDB, ...