After cloning Fabric, you can can test fabric binaries using a sample configuration. Using the binaries and sample configuration makes it simple and quick to iteratively make code changes, rebuild fabric, and test your changes from an end-to-end consumer perspective.
...
Build docker images in any terminal (we'll need baseos and ccenv docker images for Go chaincode, we won't be using peer or orderer docker images, therefore you only need to do this step once):
make docker-clean docker
...
peer chaincode invoke -o 127.0.0.1:7050 -C mychannel -n marbles -c '{"Args":["initMarble","marble1","blue","35","tom"]}' --waitForEvent
...
peer chaincode invoke -o 127.0.0.1:7050 -C mychannel -n marbles -c '{"Args":["transferMarble","marble1","jerry"]}' --waitForEvent
...
Cleanup data, chaincode containers and images
rm -r /var/hyperledger/
docker rm -f $(docker ps -aq)
docker rmi -f $(docker images -q --filter=reference='*dev*')
The CLI commands can be scripted or copy/pasted to expedite execution:
...
peer chaincode install -n marbles -p github.com/hyperledger/fabric/integration/chaincode/marbles/cmd-v 1
peer chaincode instantiate -C mychannel -n marbles -c '{"Args":["init"]}' -v 1 -o 127.0.0.1:7050
...