Installation and usage of the platform
General platform configuration: execution of smart contracts¶
If you are going to develop and execute smart contracts in your blockchain, set their execution parameters in the docker-engine section of the node configuration file:
docker-engine {
enable = yes
integration-tests-mode-enable = no
# docker-host = "unix:///var/run/docker.sock"
execution-limits {
startup-timeout = 10s
timeout = 10s
memory = 512
memory-swap = 0
}
reuse-containers = yes
remove-container-after = 10m
allow-net-access = yes
remote-registries = [
{
domain = "myregistry.com:5000"
username = "user"
password = "password"
}
]
check-registry-auth-on-startup = no
# default-registry-domain = "registry.wavesenterprise.com"
contract-execution-messages-cache {
expire-after = 60m
max-buffer-size = 10
max-buffer-time = 100ms
}
contract-auth-expires-in = 1m
grpc-server {
# host = "192.168.97.3"
port = 6865
}
}
remove-container-on-fail = yes
}
enable– enable transaction processing for Docker contracts.integration-tests-mode-enable– Docker contracts testing mode. When this option is enabled, smart contracts are executed locally in the container.docker-host– Docker daemon address (optional). If this field is commented out, the address of the daemon will be taken from the system environment.startup-timeout– time taken to create the contract container and register it in the node (in seconds).timeout– the time taken to execute the contract (in seconds).memory– memory limit for the contract container (in megabytes).memory-swap– allocated amount of virtual memory for the contract container (in megabytes).reuse-containers– using one container for several contracts when using the same Docker image. To enable this option, specifyyes, to disable -no.remove-container-after– the time interval of container inactivity, after which it will be removed.allow-net-access– permission to access the network.remote-registries– Docker registry addresses and authorization settings.check-registry-auth-on-startup– check authorization for Docker registries at node startup. To enable this option, specifyyes, to disable -no.default-registry-domain– default Docker registry address (optional). This parameter is used if no repository is specified in the contract image name.contract-execution-messages-cache– settings of the cache with the execution status of transactions on Docker contracts.expire-after– time to store the status of the smart contract.max-buffer-sizeandmax-buffer-time– settings for size and time of the status cache.contract-auth-expires-in– lifetime of the authorization token used by smart contracts for calls to the node.grpc-server– gRPC server settings section for Docker contracts with the gRPC API.host– network address of the node (optional).port– port of the gRPC server. Specify the listening port for gRPC requests used by the platform.remove-container-on-fail– removes the container if an error occurred during its startup. To enable this option, specifyyes, to disable -no.