2016-11-22 9 views
0

私は、ドッカーを使ってピアとメンバのコンテナを作成しました。 正常に起動しました。 CLIからexample02チェーンコードをデプロイしました(RESTも試しました)。私は成功のメッセージを得る。 「ハイパージーガー:チェーンコードの展開が成功しました。しかし、照会できません - ResourceNotFoundと言います。

私はchaincodeを照会しようとすると、chaincodeを照会するとき、私は エラーを取得していますエラー:(リソースが見つかりません::台帳ResourceNotFound - - LedgerError myccのデプロイメントトランザクションを取得できませんでした)chaincode仕様の起動に失敗しました

は、私が実行されるステップは次のとおりです

[[email protected] hyperledger]$ cat docker-compose.yml 
membersrvc: 
    image: hyperledger/fabric-membersrvc 
    ports: 
    - "7054:7054" 
    command: membersrvc 
vp0: 
    image: hyperledger/fabric-peer 
    ports: 
    - "7050:7050" 
    - "7051:7051" 
    - "7053:7053" 
    environment: 
    - CORE_PEER_ADDRESSAUTODETECT=true 
    - CORE_VM_ENDPOINT=unix:///var/run/docker.sock 
    - CORE_LOGGING_LEVEL=DEBUG 
    - CORE_PEER_ID=vp0 
    - CORE_PEER_PKI_ECA_PADDR=membersrvc:7054 
    - CORE_PEER_PKI_TCA_PADDR=membersrvc:7054 
    - CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054 
    - CORE_SECURITY_ENABLED=true 
    - CORE_SECURITY_ENROLLID=test_vp0 
    - CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT 
    links: 
    - membersrvc 
    command: sh -c "sleep 5; peer node start --peer-chaincodedev" 
[[email protected] hyperledger]$ docker images 
REPOSITORY      TAG     IMAGE ID    CREATED    SIZE 
hyperledger/fabric-membersrvc latest    b3654d32e4f9  5  weeks ago   1.417 GB 
hyperledger/fabric-peer   latest    21cb00fb27f4  5  weeks ago   1.423 GB 
hello-world      latest    c54a2cc56cbb  4  months ago  1.848 kB 
[[email protected] hyperledger]$ docker-compose up -d 
Creating hyperledger_membersrvc_1 
Creating hyperledger_vp0_1 
[[email protected] hyperledger]$ docker ps 
CONTAINER ID  IMAGE       COMMAND     CREATED    STATUS     PORTS              NAMES 
14b223d73370  hyperledger/fabric-peer   "sh -c 'sleep 5; peer" 8 seconds ago  Up 4 seconds  0.0.0.0:7050-7051->7050-7051/tcp, 0.0.0.0:7053->7053/tcp hyperledger_vp0_1 
88ab8858c170  hyperledger/fabric-membersrvc "membersrvc"    11 seconds ago  Up 7 seconds  0.0.0.0:7054->7054/tcp          hyperledger_membersrvc_1 

をレジストラを通じて上記とユーザーログインを行った後、私は次のペイロードで/ chaincodeの残りを実行:

 
{ 
    "jsonrpc": "2.0", 
    "method": "deploy", 
    "params": { 
    "type": 1, 
    "chaincodeID":{ 
     "path":"github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02", 
     "name" : "mycc" 
    }, 
    "ctorMsg": { 
     "args":["init", "a", "1000", "b", "2000"] 
    }, 
    "secureContext": "lukas" 
    }, 
    "id": 1 
}
私は

次の応答を得ました
{ 
     "jsonrpc": "2.0", 
     "result": 
     { 
      "status": "OK", 
      "message": "mycc" 
     }, 
     "id": 1 
    } 

上記は、展開が成功したことを確認しています。デプロイ中

{ 
     "jsonrpc": "2.0", 
     "error": 
     { 
      "code": -32003, 
      "message": "Query failure", 
      "data": "Error when querying chaincode: Error:Failed to launch chaincode spec(Could not get deployment transaction for mycc - LedgerError - ResourceNotFound: ledger: resource not found)" 
     }, 
     "id": 5 
    } 

後ドッキングウィンドウがログ添付されています:

13:19:00.894 [rest] processChaincodeDeploy -> INFO cb6 Successfully deployed chainCode: mycc 
13:19:00.895 [rest] ProcessChaincode -> INFO cb7 REST successfully deploy chaincode: {"jsonrpc":"2.0","result":{"status":"OK","message":"mycc"},"id":1} 
13:19:01.454 [consensus/noops] handleChannels -> DEBU cb8 Process block due to time 
13:19:01.454 [consensus/noops] processTransactions -> DEBU cb9 Starting TX batch with timestamp: seconds:1479820741 nanos:454455273 
13:19:01.454 [consensus/noops] processTransactions -> DEBU cba Executing batch of 1 transactions with timestamp seconds:1479820741 nanos:454455273 
13:19:01.454 [crypto] Debugf -> DEBU cbb [validator.test_vp0] Tx confdential level [PUBLIC]. 
13:19:01.454 [chaincode] Deploy -> DEBU cbc user runs chaincode, not deploying chaincode 
13:19:01.454 [state] TxBegin -> DEBU cbd txBegin() for txId [mycc] 
13:19:01.454 [chaincode] sendInitOrReady -> DEBU cbe handler not found for chaincode mycc 
13:19:01.454 [chaincode] Launch -> ERRO cbf sending init failed(handler not found for chaincode mycc) 
13:19:01.454 [container] lockContainer -> DEBU cc0 waiting for container(dev-vp0-mycc) lock 
13:19:01.454 [container] lockContainer -> DEBU cc1 got container (dev-vp0-mycc) lock 
13:19:01.455 [dockercontroller] stopInternal -> DEBU cc2 Stop container dev-vp0-mycc(Post http://unix.sock/containers/dev-vp0-mycc/stop?t=0: dial unix /var/run/docker.sock: connect: no such file or directory) 
13:19:01.455 [dockercontroller] stopInternal -> DEBU cc3 Kill container dev-vp0-mycc (Post http://unix.sock/containers/dev-vp0-mycc/kill: dial unix /var/run/docker.sock: connect: no such file or directory) 
13:19:01.456 [dockercontroller] stopInternal -> DEBU cc4 Remove container dev-vp0-mycc (dial unix /var/run/docker.sock: connect: no such file or directory) 
13:19:01.456 [container] unlockContainer -> DEBU cc5 container lock deleted(dev-vp0-mycc) 
13:19:01.456 [chaincode] Launch -> DEBU cc6 sending init completed 
13:19:01.456 [chaincode] Launch -> DEBU cc7 LaunchChaincode complete 
13:19:01.456 [state] TxFinish -> DEBU cc8 txFinish() for txId [mycc], txSuccessful=[false] 
13:19:01.456 [state] GetHash -> DEBU cc9 Enter - GetHash() 
13:19:01.456 [buckettree] ComputeCryptoHash -> DEBU cca Enter - ComputeCryptoHash() 
13:19:01.456 [buckettree] ComputeCryptoHash -> DEBU ccb Returing existing crypto-hash as recomputation not required 
13:19:01.456 [state] GetHash -> DEBU ccc Exit - GetHash() 
13:19:01.456 [consensus/noops] processTransactions -> DEBU ccd Committing TX batch with timestamp: seconds:1479820741 nanos:454455273 
13:19:01.456 [state] GetHash -> DEBU cce Enter - GetHash() 
13:19:01.456 [buckettree] ComputeCryptoHash -> DEBU ccf Enter - ComputeCryptoHash() 
13:19:01.456 [buckettree] ComputeCryptoHash -> DEBU cd0 Returing existing crypto-hash as recomputation not required 
13:19:01.456 [state] GetHash -> DEBU cd1 Exit - GetHash() 
13:19:01.456 [indexes] addIndexDataForPersistence -> DEBU cd2 Indexing block number [3] by hash = [feb273eff4ac3611f6fa3d71a0c7e7d49b3728b436e445b77dcd3529c209c9621771cb39f04f9ace636af1693c33bcd61a360edce9a1a520085915e301200fe0] 
13:19:01.456 [state] AddChangesForPersistence -> DEBU cd3 state.addChangesForPersistence()...start 
13:19:01.456 [state] AddChangesForPersistence -> DEBU cd4 Adding state-delta corresponding to block number[3] 
13:19:01.456 [state] AddChangesForPersistence -> DEBU cd5 Not deleting previous state-delta. Block number [3] is smaller than historyStateDeltaSize [500] 
13:19:01.456 [state] AddChangesForPersistence -> DEBU cd6 state.addChangesForPersistence()...finished 
13:19:01.456 [ledger] resetForNextTxGroup -> DEBU cd7 resetting ledger state for next transaction batch 
13:19:01.456 [buckettree] ClearWorkingSet -> DEBU cd8 Enter - ClearWorkingSet() 
13:19:01.456 [ledger] CommitTxBatch -> DEBU cd9 There were some erroneous transactions. We need to send a 'TX rejected' message here. 
13:19:01.457 [consensus/handler] CommitTxBatch -> DEBU cda Committed block with 0 transactions, intended to include 0 
13:19:01.457 [consensus/noops] getBlockData -> DEBU cdb Preparing to broadcast with block number 4 
13:19:01.457 [consensus/noops] getBlockData -> DEBU cdc Got the delta state of block number 4 
13:19:01.457 [consensus/noops] notifyBlockAdded -> DEBU cdd Broadcasting Message_SYNC_BLOCK_ADDED to non-validators 

私はかなりだ はその後、その後

 
{ 
    "jsonrpc": "2.0", 
    "method": "query", 
    "params": { 
     "type": 1, 
     "chaincodeID":{ 
      "name":"mycc" 
     }, 
     "ctorMsg": { 
     "args":["query", "a"] 
     }, 
     "secureContext": "lukas" 
    }, 
    "id": 5 
} 

を照会するには、以下のJSONを使用し、私は次のエラーを得ましたデプロイメントが失敗したことを確認してください。誰かがこれを解決するのを助けることができる?

+0

この回答をお読みください。 http://stackoverflow.com/questions/39730368/how-to-debug-chaincode-ledgererror-resourcenotfoundバージョン0.6に切り替えてみますか? –

+0

バージョンを確認するにはどうすればよいですか?イメージバージョンですか?私は幸せから0.6-dpを使いました。私はここの文書に従いました。https://hub.docker.com/r/yeasy/hyperledger-fabric/ –

+0

@SufiyanGhori私はチェーンコードを配備した後に呼び出すことができます。私はここでクエリの問題を抱えています。 –

答えて

0

問題は(ログから)dial unix /var/run/docker.sock: connect: no such file or directory あなたのドッカーコンテナにマウントする必要があります/var/run/docker.sock。展開や呼び出しのために200応答が唯一のトランザクションが正常にピアに送信されたことを意味しunix///var/run/docker.sock

0

にリンクするすべてのノードへ

volumes 
    - /var/run/docker.sock:/var/run/docker.sock 

。これはその成功を示すものではありません。理想的には、応答を得るためにブロックチェーンを照会する前に約3〜4分待つ必要があります。

関連する問題