1. Deploy: During Deploy the chaincode is written onto the ledger in a form of transaction and distributed to all nodes in the network. Each node creates a Docker container with this chaincode embedded in it. After that container will be started and Init method will be executed.
2. Invoke: During Invoke the chaincode can modify the state of the variables in ledger. Each “Invoke” transaction will be added to the “block” in the ledger.
3. Query: During Query the chaincode will read the current state and send it back to user. This transaction is not saved in blockchain.