- Docker Engine - Minimum version 20.10.23
- Docker compose v.1.x - Minimum version 1.29
When deploying with polybft consensus, there are some additional dependencies:
Running polygon-edge local cluster with docker can be done very easily by using provided scripts folder
or by running docker-compose manually.
All commands need to be run from the repo root / root folder.
scripts/cluster ibft --docker- deploy environment withibftconsensusscripts/cluster polybft --docker- deploy environment withpolybftconsensusscripts/cluster {ibft or polybft} --docker stop- stop containersscripts/cluster {ibft or polybft}--docker destroy- destroy environment (delete containers and volumes)
All commands need to be run from the repo root / root folder.
export EDGE_CONSENSUS=ibft- setibftconsensusdocker-compose -f ./docker/local/docker-compose.yml up -d --build- deploy environment
cd core-contracts && npm install && npm run compile && cd -- installnpmdependencies and compile smart contractsgo run ./consensus/polybft/contractsapi/artifacts-gen/main.gogenerate needed codeexport EDGE_CONSENSUS=polybft- setpolybftconsensusdocker-compose -f ./docker/local/docker-compose.yml up -d --build- deploy environment
docker-compose -f ./docker/local/docker-compose.yml stop- stop containersdocker-compose -f ./docker/local/docker-compose.yml down -v- destroy environment
Use docker/local/polygon-edge.sh script to customize chain parameters.
All parameters can be defined at the very beginning of the script, in the CHAIN_CUSTOM_OPTIONS variable.
It already has some default parameters, which can be easily modified.
These are the genesis parameters from the official docs.
Primarily, the --premine parameter needs to be edited to include the accounts that the user has access to.
Before deploying polybft environment, core-contracts submodule needs to be downloaded.
To do that, simply run make download-submodules.
When building containers for the first time (or after purging docker build cache), it might take a while to complete, depending on the hardware that the build operation is running on.
This is NOT a production ready deployment. It is to be used in development / test environments only.
For production usage, please check out the official docs.