This usually happens when the volumes are not mapped correctly in the docker compose, which peer did you get this error on? check that your docker compose for this peer maps the volumes
Setting up a Blockchain Business Network With Hyperledger Fabric & Composer Running in Multiple Physical Machine
Hi Ivan, this link is dead, could you please provide another? thank you
Hi, did you manage to solve your problem with the hostname and ip addresses for the orderer? can you please share your insights with me? i am trying to do the same, thanks
Hi @Waqas_Khan, i am able to deploy the network. See my previous comment to dara. I have use this approach, actually i am stuck because in the second machine, i can’t use the data. Nobody know how to access data in remote machine? Thanks
I see, @Ivan_Vaccari
I think i have the network running.
Do you know if there are some checks i can do to verify that it’s running?
i checked docker ps and it’s all up, i also checked docker-compose ps and it’s also showing them all there as status of UP … is there anything else i can do?
I would like to next deploy some basic chaincode on to the network and manipulate it from both hosts to ensure the connectivity is good
Docker logs, you should see the transaction.
This has been a very good example to run, but can anyone explain how does one add a new peer in another organisation on a third machine to an existing network?
Do you have to bring the entire network down and regenerate all of the crypto artefacts? this doesn’t seem practical for real world application
The crypto-config is disappeared when I execute command:
./bysn -m down
However, the error is also existed when I execute:
../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME...
how this problem can be solved? Can anybody help me? Thanks!
How to create multichannel network with multi host configuration?
do we need to add Host 1’s IP address in Host 2’s registerAdmin.js, registerUser.js files?
Firstly, I would like to say thank for you tutorial. but in this tutorial need create card only one in 1st machine and on 2nd machine not create card. In 2nd machine i can see only the transaction logs of docker when i click transaction on 1st machine. so, in 2nd machine i can’t do anything. How 2nd machine can do?(create 2nd card for using composer-rest-server)
When i am creating the ./createPeerAdminCard.sh , facing below error couid you please help me on this.
vinod@vinod-VirtualBox:~/MultipleMachinces/fabric-dev-servers-multipeer-master$ ./createPeerAdminCard.sh Using composer-cli at v0.19.1 composer card list List all business network cards Options: --help Show help [boolean] -v, --version Show version number [boolean] --card, -c The name of the card to list [string] --quiet, -q Only display the card name [boolean] Unknown argument: n Successfully created business network card file to Output file: /tmp/PeerAdmin@hlfv1.card Command succeeded Failed to import the business network card keyword: required dataPath: schemaPath: #/required params: missingProperty: x-type message: should have required property 'x-type' keyword: required dataPath: schemaPath: #/required params: missingProperty: client message: should have required property 'client' keyword: required dataPath: schemaPath: #/required params: missingProperty: certificateAuthorities message: should have required property 'certificateAuthorities' keyword: required dataPath: schemaPath: #/required params: missingProperty: channels message: should have required property 'channels' keyword: type dataPath: .orderers schemaPath: #/type params: type: object message: should be object keyword: type dataPath: .peers schemaPath: #/type params: type: object message: should be object Error: Errors found in the connection profile in the card Command failed
Thanks for sharing wonderful article !!!
In second machine i am receiving this error
docker exec -e "CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp" peer2.org1.example.com peer channel fetch config -o orderer.example.com:7050 -c composerchannel Error response from daemon: Container 78aadf90fd2f85020febe4a578b1a918a3cc6f4ad9f71c8cb1417ec39f33e09f is not running
I think you need not create a card in second machine use the request URL’s and event URL’s provided in the connection.json in for third peer and use it to write front end app using those end points.
I think your container has crashed. Please check docker logs
Very good article. This helped a lot. Had some issues with external system Peer but configuring IP for orderer fixed it.
I have installed tutorial-network sample application to my core peer and I see the database is created in Peer1 couchdb.
I have Peer2 on same system as Peer1 and Peer3 on external system. I don’t see Couchdb database (“composerchannel_tutorial-network”) on Peer2 and Peer3.
Since all peers are subscribed to single channel I assume I should be seeing this database on all couchdb instances for each peer. Making any transaction on Peer1 should replicate them to other Peers.
I see following error in my Peer2 docker logs
unable to get chaincode data from ledger for tx due to lscc’s state for [tutorial-network] not found
I see following error in my Peer3 docker logs (external system)
error getting chaincode tutorial-network on channel: composerchannel (err: could not find chaincode with name ‘tutorial-network’)
@varun Can you please advise why they are not showing up on rest of the two peers?
I am looking for a some tutorial on how to configure multi-org setup across two physical machines. Can you please help me out on that.
I had a similar issue. It was due to second machine was not able to locate orderer.example.com:7050
You need to change it to your machine 1 IP address, re generate genesis and you should be good. Also on machine to refer to your order with IP:7050 after the change.
I am receiving following error when i try to use composer network start
Starting business network marbles-network at version 0.2.4-deploy.0 Processing these Network Admins: userName: admin ✖ Starting business network definition. This may take a minute... Error: Error trying to start business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm WARN deprecated firstname.lastname@example.org: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/ npm WARN deprecated email@example.com: This project is unmaintained npm WARN deprecated firstname.lastname@example.org: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0 npm WARN deprecated email@example.com: Use uuid module instead npm WARN deprecated firstname.lastname@example.org: This project is unmaintained npm WARN deprecated email@example.com: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0 npm WARN notice [SECURITY] debug has 1 low vulnerability. Go here for more details: https://nodesecurity.io/advisories?search=debug&version=2.6.2 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info. npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/commander-558b3520/LICENSE' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/LICENSE' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/LICENSE' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/commander-558b3520/Readme.md' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/karma.conf.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/bower.json' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/node.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/CHANGELOG.md' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/component.json' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/.jshintrc' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/Makefile' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/async-e04a06be/component.json' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/LICENSE' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.coveralls.yml' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/Gruntfile.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/bower.json' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/index.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.eslintrc' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/core-js-25614c68/shim.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/.travis.yml' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/debug-07dabfa3/CHANGELOG.md' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/acorn-3d20bf66/dist/acorn.es.js' npm WARN tar ENOENT: no such file or directory, open '/chaincode/output/node_modules/.staging/bluebird-25432266/js/browser/bluebird.js' npm WARN The package composer-common is included as both a dev and production dependency. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: firstname.lastname@example.org (node_modules/bytes): npm WARN network SKIPPING OPTIONAL DEPENDENCY: request to https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: email@example.com (node_modules/double-ended-queue): npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/double-ended-queue-5d5dc01a' npm WARN optional SKIPPING OPTIONAL DEPENDENCY: firstname.lastname@example.org (node_modules/depd): npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/depd-034cb485' npm WARN optional SKIPPING OPTIONAL DEPENDENCY: email@example.com (node_modules/degenerator/node_modules/esprima): npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/chaincode/output/node_modules/.staging/esprima-aa16605d' npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND npm ERR! network request to https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443 npm ERR! network This is a problem related to network connectivity. npm ERR! network In most cases you are behind a proxy or have bad network settings. npm ERR! network npm ERR! network If you are behind a proxy, please make sure that the npm ERR! network 'proxy' config is set properly. See: 'npm help config' npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2018-05-11T05_26_58_243Z-debug.log " Response from attempted peer comms was an error: Error: 2 UNKNOWN: failed to init chaincode: handler not found for chaincode marbles-network:0.2.4-deploy.0 Command failed
This happens when you’ve not joined the peer2 and peer3 into the composerchannel. Make sure you joined the channels with following.
docker exec peer2.org1.example.com peer channel join -b composerchannel.block docker exec peer3.org1.example.com peer channel join -b composerchannel.block