$ ./byfn.sh -m generate
$ ./byfn.sh -m up -s couchdb -a
....
Error: Got unexpected status: BAD_REQUEST
Usage:
peer channel create [flags]
Flags:
-c, --channelID string In case of a newChain command, the channel ID to create.
-f, --file string Configuration transaction file generated by a tool such as configtxgen for submitting to orderer
-t, --timeout int Channel creation timeout (default 5)
Global Flags:
--cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint
--logging-level string Default logging level and overrides, see core.yaml for full syntax
-o, --orderer string Ordering service endpoint
--test.coverprofile string Done (default "coverage.cov")
--tls Use TLS when communicating with the orderer endpoint
-v, --version Display current version of fabric peer server
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
#Solution: delete the original image
$ docker rm $(docker ps -a -q)
$ ./byfn.sh -m generate
Generating certs and genesis block for with channel 'mychannel' and CLI timeout of '10000' seconds and CLI delay of '3' seconds
Continue (y/n)? and
proceeding ...
cryptogen tool not found. exiting
#Solution
There must be a bin folder under the upper-level directory where the first-network example is executed, which contains the required executable files.
Operation: First, check whether there is a script under the directory: bootstrap-1.0.0.sh, and execute it if it exists.
If not: You need to execute the following command in the fabric-samples directory to download the required binary files:
$ curl -sSL https://goo.gl/eYdRbX | bash
After execution, a bin directory will be created under the fabric-samples directory, where all the required binary tools are placed.
Note: Due to network reasons, the above curl may fail to execute. In fact, this script file already exists in the fabric:
Location: below gopath/src/github.com/hyperledger/fabric/scripts, just copy the script file to the fabric sample directly