hyperledger fabric explorer 安装配置 (暂未完成)

    技术2022-07-11  80

    环境:Ubuntu18.04.4

    参考教程:

    https://segmentfault.com/a/1190000021387375https://blog.csdn.net/sun13465816527/article/details/80453518https://www.jianshu.com/p/d19e9cad46e3

    本文为自己的一个实验记录。仅供参考。借鉴了很多人的博客和教程,基本都标注出来了。在此表示诚挚的感谢。

    目录

    前言

    所需依赖及安装

    1. 安装 nodejs 8.11.x

    2. 安装PostgreSQL9.5或更高

    3. 安装 jq

    4. docker 与 docker-compose

    代码配置

    1. Clone 项目代码

    2. 修改blockchain-explorer配置信息

    3. 导入数据库相关脚本

    4. explorer 与 fabric1.4 例子结合

     构建项目

    启动项目

    访问explorer界面


    前言

    由于更换了设备以及后续实验等原因,最后用了 fabric1.4 版本,而不是前文中的1.0版本。1.4搭建过程参考教程:https://blog.csdn.net/qq_27348837/article/details/86974035 亲测有效且顺利。 其中,hyperledger-fabric-linux-amd64-1.4.0.tar 的下载来自 https://blog.csdn.net/qq_27348837/article/details/87895021 其中,npm 问题的解决方式可参考 https://www.jianshu.com/p/a64810bb1f6e 安装成功截图 启动网络 ./byfn.sh up 停掉网络 ./byfn.sh down

    所需依赖及安装

    1. 安装 nodejs 8.11.x

    参考教程:https://www.cnblogs.com/xiaojf/p/11107874.htmlhttps://blog.csdn.net/chixiang3533/article/details/100799369

    直接从官网下载:https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz 拖到虚拟机里相应位置,比如我将其放在/opt/中。解压:tar xvf node-v8.11.1-linux-x64.tar.xz 配置开发环境:  vi /etc/profile 增加以下内容:

     

    #SET PATH FOR NODEJS export NODE_HOME=/opt/node-v8.11.1-linux-x64 export PATH=$NODE_HOME/bin:$PATH

    注:把NODE_HOME的内容换成nodejs的安装路径即可。

    使环境变量生效:source /etc/profile

    检查是否配置成功:$ node -v

    2. 安装PostgreSQL9.5或更高

    sudo apt-get install wget ca-certificates wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' sudo apt-get update sudo apt-get install postgresql postgresql-contrib

    使用postgres用户登录数据库:sudo -u postgres psql          登录成功后,命令就会在postgres=# 下运行了:

    # 以下内容内容都是在 postgres=# 下输入 ALTER USER postgres WITH PASSWORD '123456'; # 密码设置为123455,有分号才会执行命令 \q #退出客户端

    修改ubuntu操作系统的postgres用户的密码

    sudo passwd -d postgres #清空用户postgres的密码 sudo -u postgres passwd #设置密码 接下来按要求输入两次密码,要与上面的密码相同

    查看版本:psql --version

    参考教程:https://blog.csdn.net/u013719339/article/details/84134586

    3. 安装 jq

    apt-get install jq jq --version

    4. docker 与 docker-compose

    已按照前文配置好了 docker 19.03.12 和 docker-compose 1.26.1

    代码配置

    参考教程:https://blog.csdn.net/qq_32675427/article/details/99946945

    1. Clone 项目代码

    在go/src/github.com/hyperledger路径下, git clone https://github.com/hyperledger/blockchain-explorer.git cd blockchain-explorer

    2. 修改blockchain-explorer配置信息

    cd blockchain-explorer vim appconfig.json 修改"host": "localhost", 为"host": "虚拟机ip", 也可以修改端口

    cd app vim explorerconfig.json 修改postgresql相关连接信息

    3. 导入数据库相关脚本

    cd go/src/github.com/hyperledger/blockchain-explorer/app/persistence/fabric/postgreSQL/db ./createdb.sh 会创建fabricexplorer库以及相关表和索引。

    4. explorer 与 fabric1.4 例子结合

    cd go/src/github.com/hyperledger/blockchain-explorer/app/platform/fabric vim config.json 设置blockchain network的名称,connectionProfile的路径

    编辑first-network.json文件 vim ./connection-profile/first-network.json 可以设置explorer登录账号密码

    fabric 的例子所在路径是/user/local/go/src/github.com/hyperledger/fabric-samples/first-network 替换掉 first-network.json 文件中/fabric-path/first-network,并且替换真实的私钥文件名称(去具体路径 /user/local/go/src/github.com/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore 下查看)。

    我的修改为: 95f08ae13f773301e15a99a334b606a3c42104bf85ced31d591778d7f276de7b_sk

    具体修改位置见下图指示———————————————————————— 注意!如果没有crypto-config文件夹,必须在 first-network 路径下执行命令: cryptogen generate --config=./crypto-config.yaml 执行完以后,会在当前目录生成一个 crypto-config 目录,在这个目录下会根据 Orderer 和Peer 各自生成两个文件夹: ordererOrganizations peerOrganizations 分别代表着orderer和peer的组织及对应目录下的证书文件。————————————————————————

     构建项目

    cd blockchain-explorer ./main.sh install

    ./main.sh clean 清空各种依赖和构建的项目

    启动项目

    cd blockchain-explorer debug模式启动项目  ./start.sh debug

     ./stop.sh 关闭项目

    访问explorer界面

    访问http://虚拟机ip:8080 (端口可以修改默认8080) 用户名密码可以配置,默认admin/adminpw

     

    Processed: 0.015, SQL: 9