* Experimental Support for using podman with the test-network Signed-off-by: Matthew B White <whitemat@uk.ibm.com> * supplement podman with nerdctl Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com> * adds experimental support for nerdctl compose Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com> * install fabric images to containerd with 'nerdctl' pull Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com> * Podman Support Use a core set of compose files, with overlays for specific details. In the case of podman, the overlays refer to a specific core.yaml for the peer that distables the use of teh docker daemon In the case of docker, the overlays add enable the docker daemon accesss for the peer to create chaincode containers Signed-off-by: Matthew B White <whitemat@uk.ibm.com> Co-authored-by: Josh Kneubuhl <jkneubuh@us.ibm.com> |
||
|---|---|---|
| .. | ||
| addOrg3 | ||
| compose | ||
| configtx | ||
| organizations | ||
| prometheus-grafana | ||
| scripts | ||
| system-genesis-block | ||
| .gitignore | ||
| CHAINCODE_AS_A_SERVICE_TUTORIAL.md | ||
| monitordocker.sh | ||
| network.sh | ||
| README.md | ||
| setOrgEnv.sh | ||
Running the test network
You can use the ./network.sh script to stand up a simple Fabric test network. The test network has two peer organizations with one peer each and a single node raft ordering service. You can also use the ./network.sh script to create channels and deploy chaincode. For more information, see Using the Fabric test network. The test network is being introduced in Fabric v2.0 as the long term replacement for the first-network sample.
Before you can deploy the test network, you need to follow the instructions to Install the Samples, Binaries and Docker Images in the Hyperledger Fabric documentation.
Using the Peer commands
The setOrgEnv.sh script can be used to setup the environment variables for the ogrganziations, this will will help to be able to use the peer commands directly.
First, ensure that the peer binaries are on your path, and the Fabric Config path is set Assuming that you're in the test-network directory.
export PATH=$PATH:$(realpath ../bin)
export FABRIC_CFG_PATH=$(realpath ../config)
You can then set up the environment variables for each organization. The ./setOrgEnv.sh command is designed to be run as follows.
export $(./setOrgEnv.sh Org2 | xargs)
(Note bash v4 is required for the scripts)
You will now be able to run the peer commands in the context of Org2. If a different command prompt you can run the same command with Org1 instead.
The setOrgEnv script outputs a series of <name>=<value> strings. These can then be fed into the export command for your current shell
Chaincode-as-a-service
To learn more about how to use the improvements to the Chaincode-as-a-service please see this tutorial. It is expected that this will move to augment the tutorial in the Hyperledger Fabric ReadTheDocs
Podman
A copy of the install_fabric.sh script is in the test-network directory. This has been enhanced to support a podman argument; if used it will use the podman command to pull down images and tag them rather than docker. The images are the same, just pulled differently
The network.sh script has been enhanced so that it can use podman and podman-compose instead of docker. Ensure that CONTAINER_CLI is set as below when running network.sh script.
CONTAINER_CLI=podman ./network.sh up
As there is no Docker-Daemon when using podman, only the ./network.sh deployCCAAS command will work.