티스토리 뷰
[blockchain-explorer] Hyperledger Explorer 설치 및 실행(Node v8.x)
miiingo 2018. 6. 19. 15:32Hyperledger Explorer 설치 및 실행(Node v8.x)
기본 환경설정
소스코드 복사
cd /opt/gopath/src/github.com/hyperledger
git clone https://github.com/hyperledger/blockchain-explorer
cd blockchain-explorer
데이터베이스 설정
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
sudo apt-get install postgresql
sudo -u postgres psql
# 데이터베이스 생성 스크립트 실행
\i app/persistance/postgreSQL/db/explorerpg.sql
\i app/persistance/postgreSQL/db/updatepg.sql
# fabricexplorer 데이터베이스 생성 확인
\l
# 테이블 생성 확인
\d
# 접속 종료
\q
네트워크 설정
config.json
./app/platform/fabric/config.json
파일에서 network-config(org 설정) 부분과 channel(채널명), orderers(orderer 설정), configtxgenToolPath(configtxgen 도구가 있는 경로) 부분 설정이 필요합니다.
자신의 네트워크 환경에 맞게 config.json 파일을 변경해줍니다.
sudo atom /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/platform/fabric/config.json
{
"network-config": {
"org1": {
"name": "peerorg1",
"mspid": "org1MSP",
"peer1": {
"requests": "grpcs://<org1을 실행한 호스트의 IP주소>:7051",
"events": "grpcs://<org1을 실행한 호스트의 IP주소>:7053",
"server-hostname": "peer0.org1.honeybee.com",
"tls_cacerts": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org1.honeybee.com/peers/peer0.org1.honeybee.com/tls/ca.crt"
},
"peer2": {
"requests": "grpcs://<org1을 실행한 호스트의 IP주소>:7056",
"events": "grpcs://<org1을 실행한 호스트의 IP주소>:7058",
"server-hostname": "peer1.org1.honeybee.com",
"tls_cacerts": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org1.honeybee.com/peers/peer1.org1.honeybee.com/tls/ca.crt"
},
"admin": {
"key": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org1.honeybee.com/users/Admin@org1.honeybee.com/msp/keystore",
"cert": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org1.honeybee.com/users/Admin@org1.honeybee.com/msp/signcerts"
}
},
"org2": {
"name": "peerorg2",
"mspid": "org2MSP",
"peer1": {
"requests": "grpcs://<org2를 실행한 호스트의 IP주소>:7051",
"events": "grpcs://<org2를 실행한 호스트의 IP주소>:7053",
"server-hostname": "peer0.org2.honeybee.com",
"tls_cacerts": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org2.honeybee.com/peers/peer0.org2.honeybee.com/tls/ca.crt"
},
"peer2": {
"requests": "grpcs://<org2를 실행한 호스트의 IP주소>:7056",
"events": "grpcs://<org2를 실행한 호스트의 IP주소>:7058",
"server-hostname": "peer1.org2.honeybee.com",
"tls_cacerts": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org2.honeybee.com/peers/peer1.org2.honeybee.com/tls/ca.crt"
},
"admin": {
"key": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org2.honeybee.com/users/Admin@org2.honeybee.com/msp/keystore",
"cert": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/peerOrganizations/org2.honeybee.com/users/Admin@org2.honeybee.com/msp/signcerts"
}
}
},
"channel": "honeybeechannel",
"orderers": [
{
"mspid": "OrdererMSP",
"server-hostname": "orderer.org2.honeybee.com",
"requests": "grpcs://<orderer.org2를 실행한 호스트의 IP주소>:7050",
"tls_cacerts": "/opt/gopath/src/github.com/hyperledger/honeybee/network/artifacts/crypto-config/ordererOrganizations/honeybee.com/orderers/orderer.org2.honeybee.com/tls/ca.crt"
}
],
"keyValueStore": "/tmp/fabric-client-kvs",
"configtxgenToolPath": "/opt/gopath/src/github.com/hyperledger/honeybee/network/bin",
"eventWaitTime": "30000",
"license": "Apache-2.0",
"version": "1.1"
}
explorerconfig.json
explorer에 관한 config 설정은 ./app/explorer/explorerconfig.json 파일을 수정합니다.
sudo atom /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/explorer/explorerconfig.json
{
"persistance": "postgreSQL",
"platforms": ["fabric"]
}
pgconfig.json
postgreSQL에 관한 config 설정은 ./app/persistance/postgreSQL/db/pgconfig.json 파일을 수정합니다.
sudo atom /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/persistance/postgreSQL/db/pgconfig.json
{
"pg": {
"host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
}
}
appconfig.json
explorer application에 관한 config 설정은 ./appconfig.json 파일을 수정합니다.
sudo atom /opt/gopath/src/github.com/hyperledger/blockchain-explorer/appconfig.json
{
"host": "localhost",
"port": "8080",
"license": "Apache-2.0"
}
Hyperledger Explorer 실행
npm 설치 및 빌드
#npm 설치 및 빌드
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/test
npm install
npm run test
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
npm install
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer/client/
npm install
npm test -- -u --coverage
npm run build
※ blockchain-explorer/app/test에서 npm run test 명령 실행 시 아래와 같은 오류가 발생할 경우, 건너뛰고 나머지 작업들을 차례로 실행한 뒤 가장 마지막에 다시 수행하면 테스트가 정상적으로 완료됩니다.
> hyperledger-explorer-test@0.3.0 test /opt/gopath/src/github.com/hyperledger/blockchain-explorer/app/test
> mocha *.js --exit
module.js:478
throw err;
^
Error: Cannot find module 'log4js'
at Function.Module._resolveFilename (module.js:476:15)
at Function.Module._load (module.js:424:25)
...
blockchain-explorer 프로젝트 실행
#blockchain-explorer 프로젝트 실행
cd /opt/gopath/src/github.com/hyperledger/blockchain-explorer
#./start.sh
mkdir -p ./logs/app & mkdir -p ./logs/db & mkdir -p ./logs/console
#node main.js >>logs/console/console.log-"$(date +%Y-%m-%d)" 2>&1 &
node main.js
#로그 출력
tail -f log.log
트랜잭션이 많은 경우, 초기 데이터 로드를 위한 시간이 오래 걸릴 수 있습니다.
blockchain-explorer 프로젝트 종료
node main.js 명령으로 실행한 경우, 해당 명령을 실행한 터미널에서 Ctrl + c
버튼을 누르면 blockchain-explorer가 종료됩니다.
start.sh
스크립트로 실행한 경우, blockchain-explorer를 종료하기 위해서는 다음과 같이 수행합니다.
# 프로세스ID(PID) 값 확인
ps -ef | grep "node main.js"
# 해당 프로세스 kill
kill -9 <해당 PID>
'Blockchain > Blockchain 네트워크 구성' 카테고리의 다른 글
[Blockchain 네트워크 구성] Hyperledger Fabric v1.2 Private Data 저장 오류 해결 (0) | 2018.07.13 |
---|---|
[Blockchain 네트워크 구성] Hyperledger Fabric v1.2에서 Private Data 저장 및 조회 (0) | 2018.07.13 |
[Blockchain 네트워크 구성] Node-RED에서 Composer Card not found 오류 해결 (0) | 2018.06.15 |
[Blockchain 네트워크 구성] Node-RED에 Composer Card 추가 방법 (0) | 2018.06.15 |
[Blockchain 네트워크 구성] No valid response from any peers 오류 해결 (0) | 2018.06.14 |
- Total
- Today
- Yesterday
- javascript
- 빅데이터 강의
- 기초 of 기초 데이터 개념
- Hyperledger Fabric
- Blockchain
- 빅데이터
- 직딩잇템
- ubuntu
- 암브로셔스
- 코딜리티
- Hyperledger Fabric v1.1
- 알고리즘
- 빅데이터 기초
- ambrosus
- 코테
- 코딩테스트
- 문제풀이
- Hyperledger Fabric v1.2
- 하이퍼레저 페브릭
- 하이퍼레저 패브릭
- 블록 체인
- 빅데이터 교육
- codility
- 블록체인
- DOCs
- docker
- Hyperledger Indy
- 하이퍼레저 인디
- Private Data
- 어서와 데이터는 처음이지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |