安装blockchain-explorer区块浏览器
概述
最近在做區(qū)塊鏈相關項目(基于hyperledger fabric),需要能夠實時監(jiān)測區(qū)塊鏈網(wǎng)絡中的信息。好在hyperledger官方提供了一個區(qū)塊瀏覽器(也就是blockchain-explorer),也就不用自己對照API進行開發(fā)了。
目前網(wǎng)上的區(qū)塊鏈博客相對較少,關于此區(qū)塊瀏覽器的安裝資料還停留在1.4版本(本文基于hyperledger fabric測試網(wǎng)絡2.1版本);且基本上都是采用代碼庫方式安裝,需要手動安裝postgreSQL、npm、Nodejs、jq等多種組件,非常麻煩,因此本文提供一種基于Docker-Compose進行安裝的方式。
官方github地址:https://github.com/hyperledger/blockchain-explorer
準備條件
- 已經(jīng)安裝了Docker環(huán)境,并且已經(jīng)啟動了
- 已經(jīng)成功啟動了hyperledger fabric的測試網(wǎng)絡,或者你自己部署的生產(chǎn)網(wǎng)絡
開始安裝
1. 拉取docker鏡像
如果你運行過first-network.sh(1.x)或者test-network.sh(2.x),那么以下docker鏡像會被自動拉取到本地
- Hyperledger Explorer docker repository
- Hyperledger Explorer PostgreSQL docker repository
如果你沒有運行過這兩個腳本或者本地沒有這兩個鏡像,需要去docker hub上拉取一下
2. 準備啟動文件
執(zhí)行下方命令下載文件
wget https://raw.githubusercontent.com/hyperledger/blockchain-explorer/main/examples/net1/config.json wget https://raw.githubusercontent.com/hyperledger/blockchain-explorer/main/examples/net1/connection-profile/test-network.json -P connection-profile wget https://raw.githubusercontent.com/hyperledger/blockchain-explorer/main/docker-compose.yaml啟動測試網(wǎng)絡后會在fabric-samples下的first-network目錄下(1.x)或test-network目錄(2.x)生成organizations目錄,該目錄下存放著各個組織、節(jié)點的加密證書信息。
將organizations目錄復制到你剛剛下載文件所在的目錄。那么此時該路徑下目錄結構如下所示
3. 修改配置文件
- 修改docker-compose.yaml文件
如果你對docker-compse比較了解,請按照自己的情況修改;如果不了解,請按照我下面給出的方式修改,你可以修改得和我一摸一樣。
找到volumes標簽,將其下的內(nèi)容刪掉或注釋掉,配置成如下
意思就是
(a)將容器中的/opt/explorer/app/platform/fabric/config.json文件掛在到當前目錄下的config.json文件
(b)將容器中的/opt/explorer/app/platform/fabric/connection-profile目錄,掛在到當前目錄下的connection-profile目錄
(c)將容器中的/tmp/crypto目錄,掛在到當前目錄中的organizations目錄
(d)將容器中的/opt/explorer/wallet掛在walletstore。此處使用的是卷標方式,如果想知道walletstore的具體地址可以執(zhí)行如下命令進行查看
(e)ports:由于我服務器中的8080端口被占用了,因此我將容器中的8080端口映射到本地的18080端口,你可以自由更改為一個未沖突的端口,或者不修改(選做)
(f)environment:如果你使用的是虛擬機且使用橋接方式將資源管理器連接到結構網(wǎng)絡,那么你需要在environment標簽下添加如下設置以禁用主機名到LOCALHOST的映射(選做)
- 進入connection-profile目錄修改test-network.json文件
修改的地方主要在于
(a)organizations.Org1MSP.adminPrivateKey.path
此值改為:/tmp/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/728adf3380e5afc3a5471c74d15e59386f10c3671e91a24d187e82bf6377a8d8_sk
(b)organizations.Org1MSP.signedCert.path
此值改為:/tmp/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/cert.pem
(c)peers.peer0.org1.example.com.tlsCACerts.path
此值改為:/tmp/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
下面解釋一下:
在上一步修改docker-compse步驟c中,我們將容器中的/tmp/crypto目錄,掛在到當前目錄中的organizations目錄,這兩個目錄可以理解為相互同步,那么我們在此處a步驟中將organizations.Org1MSP.adminPrivateKey.path設置為/tmp/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/728adf3380e5afc3a5471c74d15e59386f10c3671e91a24d187e82bf6377a8d8_sk其實設置的是…/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/728adf3380e5afc3a5471c74d15e59386f10c3671e91a24d187e82bf6377a8d8_sk,但是我們必須設置為容器中的路徑,否則讀不到。此處b、c中的設置原因同。
4. 啟動
切換到上層即docker-compose所在目錄,執(zhí)行如下命令啟動項目
docker-compose up觀察日志,是否出錯。如果出錯,根據(jù)日志中的錯誤進行修改;如果未出錯,直接CTRL+C結束掉,然后執(zhí)行如下命令后臺啟動。之所以不直接后臺啟動是為了方便觀察啟動日志。
tips:
docker-compose down
5. 訪問
- 開放端口(如果你在docker-compose文件中沒有更改就是8080)
- 瀏覽器訪問http://服務器ip:8080
用戶名和密碼在connection-profile目錄下的test-network.json文件中,默認
用戶名:exploreradmin
密碼:exploreradminpw
登錄之后界面如下所示
總結
以上是生活随笔為你收集整理的安装blockchain-explorer区块浏览器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 泡泡QQ资料
- 下一篇: 2017年html5行业报告,云适配发布