Blockchain/Blockchain 네트워크 구성
[Blockchain 네트워크 구성] Node-RED에서 Composer Card not found 오류 해결
miiingo
2018. 6. 15. 18:26
반응형
오류 확인
nodered/node-red-docker:0.18.7-v8 이미지를 사용한 pig-node-red 컨테이너 실행 시, pig-node-red 컨테이너가 자동으로 죽어서 로그를 확인해 보았더니 다음과 같은 에러가 발생하였습니다.
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] checking config { cardName: 'admin@pig-trace-network',
cardStoreLocation: undefined,
cardStoreConfig: {} }
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] using card: admin@pig-trace-network
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] using cardConfig: [object Object]
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] subscribe
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] ensureConnected
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] connectInternal
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] settings: cardNameadmin@pig-trace-network
14 Jun 09:41:25 - [info] [hyperledger-composer-in:receive event] Card not found: admin@pig-trace-network
14 Jun 09:41:25 - [error] [hyperledger-composer-in:receive event] Error: Card not found: admin@pig-trace-network
14 Jun 09:41:25 - [red] Uncaught Exception:
14 Jun 09:41:25 - Error: EACCES: permission denied, open '/usr/src/node-red/.composer/logs/trace_20180614.log'
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-red-docker@1.0.0 start: `node $NODE_OPTIONS node_modules/node-red/red.js -v $FLOWS "--userDir" "/data"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-red-docker@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /usr/src/node-red/.npm/_logs/2018-06-14T09_41_25_700Z-debug.log
Hyperledger Fabric 1.1 버전, Hyperledger Composer 0.19.7 버전을 사용해 블록체인 네트워크를 구성하고 pig-node-red 컨테이너에 node-red-contrib-composer@0.0.12 모듈을 설치한 뒤, flow.json에서 hyperledger-composer-config에 Composer Card를 설정했는데 해당 카드를 인식하지 못하고 있는 것 같습니다.
오류 해결
우선, pig-node-red 컨테이너를 중지하고 제거합니다.
docker container stop pig-node-red
docker container rm pig-node-red
이 문제를 해결하기 위해서는, Node-RED 컨테이너가 사용할 수 있도록 Composer Card 저장소의 권한을 변경해주어야 합니다.
hyperledger/composer-cli:0.19.7 이미지를 사용한 pig-composer 컨테이너를 사용해 /home/compose/.composer
디렉토리 내의 모든 파일의 권한을 777로 변경해줍니다.
로컬 환경의 $(pwd)/.vld-card-store
디렉토리는 Composer Card 저장소로서, pig-composer 컨테이너와 pig-node-red 컨테이너에 볼륨으로 설정되어 있습니다.
docker exec \
pig-composer \
find /home/composer/.composer -name "*" -exec chmod 777 {} \;
반응형