Run Multichain in Docker. The module comprised of four packages.
The general idea is that one node is a master node controlling and deploying the scenario and all
other nodes are slavenodes executing the transactions required by that scenario.
data_acquisition
which sends the runtime data of the chain to a server.implementation
which offers proxy implementations for the slave nodes which allows the master-node to communicate with the slaves. It also offers asetup
class to perform actions such as rights management on the blockchain.master
contains the main entry point to start thescenario-orchestration-service
which listens for input from theprivate-chain-controller
at port 21000.slave_node
which contains a python program running on the each slave. It connects to thescenario-orchestration-service
running on themaster
to send its credentials for multichain rpc login.
Both slave and master share one dockerfile but are defined as different services with different entry points in the docker-compose file. You can simply scale slaves at any time. Masternodes should not be scaled. Run e.g. docker-compose up --build scale slavenode=15
This Multichain setup is not recommended for production. Anyone can control the nodes.