123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #!/bin/bash
- project=suning
- channel=mychannel
- docker_ca_images="hyperledger/fabric-ca:x86_64-1.0.5"
- docker_tool_imagers="hyperledger/fabric-tools:x86_64-1.0.5"
- docker_peer_images="hyperledger/fabric-peer:x86_64-1.0.5"
- docker_couchdb_images="hyperledger/fabric-couchdb:x86_64-1.0.5"
- docker_orderer_images="docker.io/hyperledger/fabric-orderer:x86_64-1.0.5"
- docker_ccenv_images="docker.io/hyperledger/fabric-ccenv:x86_64-1.0.5"
- docker_baseos_images="docker.io/hyperledger/fabric-baseos:x86_64-0.4.2"
- rm -rf "$project"_*
- function create_ca() {
- dir="$project"_ca
- rm -rf $dir
- mkdir -p $dir
- echo "docker pull $docker_ca_images" >> $dir/download-dockerimages.sh
- echo "docker tag $docker_ca_images hyperledger/fabric-ca" >> $dir/download-dockerimages.sh
- echo "CHANNEL_NAME=$channel ./docker-compose -f docker-compose-ca.yaml up -d " >> $dir/start.sh
- echo "sleep 2" >> $dir/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_users" >> $dir/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_replicator" >> $dir/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_global_changes" >> $dir/start.sh
- echo "docker logs -f ca.org1.example.com" >> $dir/start.sh
- echo "docker logs -f ca.org2.example.com" >> $dir/start.sh
- chmod u+x $dir/download-dockerimages.sh
- chmod u+x $dir/start.sh
- mkdir -p $dir/scripts
- cp -rf solo $dir
- cp -rf kafka $dir
- cp -rf scripts $dir
- cp -rf docker-compose $dir
- cp -rf docker-compose-ca.yaml $dir
- tar -cvf "$dir".tar $dir
- gzip "$dir".tar
- rm -rf $dir
- }
- function create_orderer() {
- while read -s -n1 -p "Are you want to generateCfgTrx channel.tx and orderer.block ? [y|n]" input
- do
- case $input in
- Y|y)
- echo "generateCfgTrx"
- CURRENT_DIR=$PWD
- source generateCfgTrx.sh $channel
- cd $CURRENT_DIR
- break;;
- N|n)
- echo "skip generateCfgTrx"
- break;;
- *)
- echo "input error";;
- esac
- done
- dir="$project"_orderer
- rm -rf $dir
- mkdir -p $dir
- echo "docker pull $docker_orderer_images" >> $dir/download-dockerimages.sh
- echo "docker tag $docker_orderer_images hyperledger/fabric-orderer" >> $dir/download-dockerimages.sh
- echo "CHANNEL_NAME=$channel ./docker-compose -f docker-compose-orderer.yaml up -d " >> $dir/start.sh
- echo "docker logs -f orderer.example.com" >> $dir/start.sh
- chmod u+x $dir/download-dockerimages.sh
- chmod u+x $dir/start.sh
- cp -rf solo $dir
- cp -rf kafka $dir
- cp -rf docker-compose $dir
- cp -rf docker-compose-orderer.yaml $dir
- tar -cvf "$dir"0.tar $dir
- gzip "$dir"0.tar
- rm -rf $dir
- }
- function create_peer() {
- rm -rf $project
- mkdir -p $project
- for N in 0 1 2 3 ; do
- rm -rf $project
- mkdir -p $project
- echo "CHANNEL_NAME=$channel ./docker-compose -f docker-compose-peer"$N".yaml up -d " >> $project/start.sh
- echo "sleep 2" >> $project/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_users" >> $project/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_replicator" >> $project/start.sh
- echo "curl -X PUT http://127.0.0.1:5984/_global_changes" >> $project/start.sh
- echo "docker pull $docker_peer_images" >> $project/download-dockerimages.sh
- echo "docker tag $docker_peer_images hyperledger/fabric-peer" >> $project/download-dockerimages.sh
- echo "docker pull $docker_couchdb_images" >> $project/download-dockerimages.sh
- echo "docker tag $docker_couchdb_images hyperledger/fabric-couchdb" >> $project/download-dockerimages.sh
- echo "docker pull $docker_ccenv_images" >> $project/download-dockerimages.sh
- echo "docker tag $docker_ccenv_images hyperledger/fabric-ccenv" >> $project/download-dockerimages.sh
- echo "docker pull $docker_baseos_images" >> $project/download-dockerimages.sh
- chmod u+x $project/start.sh
- chmod u+x $project/download-dockerimages.sh
- mkdir -p ./$project/peer-base
- cp -rf docker-compose $project
- cp -rf docker-compose-peer"$N".yaml $project
- cp -rf peer-base/peer-base.yaml $project/peer-base/peer-base.yaml
- cp -rf solo $project/
- cp -rf kafka $project/
- tar -cvf "$project"_peer$N.tar $project
- gzip "$project"_peer$N.tar
- rm -rf $project
- done
- rm -rf $project
- }
- create_orderer
- create_ca
- create_peer
|