./categories/back-end
Hyperledger Fabric Tutorial
Vagrant
vagrant box add <box_image_name> <imageURL>
vagrant init <box_image_name>
# Vagrantfile: memory 4096 등
vagrant up && vagrant ssh
sudo passwd vagrant
도구
# Docker
sudo usermod -aG docker $USER # 재로그인 후
docker version
# Go
echo 'export GOPATH=$HOME/go' >> ~/.profile
echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.profile
source ~/.profile
jq --version
Fabric samples
mkdir -p $HOME/go/src/github.com/<user>
cd $HOME/go/src/github.com/<user>
chmod +x install-fabric.sh && ./install-fabric.sh
test-network
cd $HOME/go/src/github.com/<user>/fabric-samples/test-network
./network.sh up
./network.sh createChannel -c mychannel
./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go
./network.sh down
deployCC:-ccn이름,-ccp경로,-ccl언어(go|java|javascript|typescript)
Peer 환경변수 (Org1 예)
export PATH=${PWD}/../bin:$PATH
export FABRIC_CFG_PATH=$PWD/../config/
export CORE_PEER_TLS_ENABLED=true
export CORE_PEER_LOCALMSPID=Org1MSP
export CORE_PEER_TLS_ROOTCERT_FILE=${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=${PWD}/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=localhost:7051
invoke / query
peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com \
--tls --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem \
-C mychannel -n basic \
--peerAddresses localhost:7051 --tlsRootCertFiles ${CORE_PEER_TLS_ROOTCERT_FILE} \
-c '{"function":"InitLedger","Args":[]}'
peer chaincode query -C mychannel -n basic -c '{"Args":["GetAllAssets"]}'
./comments