2 Configuring the Docker Image
2.1 Create a cyberway repository in a separate space
Open a command window and enter the cyberway
directory where the Docker image will be created. Next, execute:
The space from which the command was executed must copy the cyberway
directory with its contents. Error messages should not appear during the copy process.
2.2 Create a separate testnet directory
The location of this directory is chosen arbitrarily (hereafter the ~/testnet
directory is used):
2.3 Copy the docker files
In the newly created directory ~/testnet
copy the files docker-compose.yml
and sample configuration file config.ini
from the Cyberway repository. Used to copy commands:
2.4 Go to the ~/testnet directory All other commands must be executed from this directory.
2.5 Configure settings in the config.ini configuration file
2.5.1 Set the system status database address. The recommended address for the chaindb_address
parameter is:
2.5.2 Set the addresses of the remaining nodes of the network to which you want to connect:
The parameter p2p-peer-address
is configured separately for each connected network node. To connect N network nodes, you need to specify this parameter N times. In order to start the node correctly and connect to Testnet
(provided by the CyberWay developers), it is recommended to specify the address116.203.104.164:9876
.
2.5.3 To receive incoming connections from other network nodes, you have to uncomment the p2p-listen-endpoint
parameter and specify the address of the network interface on which you should expect connections, as well as the port number. Setting the interface address in the form 0.0.0.0
allows the nodeosd
service to listen to connections from other network nodes on all available network interfaces. Recommended address:
2.5.4 If a user wants to log in as a validator, she/he needs to additionally specify the producer name and the keys that will be used to sign the blocks.
By default, the producer-name
parameter is commented out. In this case, the node is used only to connect to Testnet
without producing blocks. To connect to Testnet
with the ability to produce blocks, the validator should to additionally set the parameters producer-name
and signature-provider
.
These parameters can be set only by the validator, since it is she/he who has the data about the account name and the keys that must be used to create the blocks. The validator has to generate the values of the private and public keys independently (or use the Golos blockchain keys). The private key of the validator unit is used to sign the blocks.
The following table provides a recommended list of configuration file parameters used to connect a node to Testnet
, as well as to configure a validator node.
Parameter | Connecting a node to Testnet | Setting up the validator |
producer name | — | + |
signature provider | — | + |
chaindb_address | + | + |
p2p-peer-address | + | + |
p2p-listen-endpoint | +/— | +/— |
2.6 Generate genesis data
2.6.1 Download the archived file with the genesis contents to the ~/testnet
directory and unpack it by executing:
After these commands are executed, the genesis
directory should appear in ~/testnet
, containing the files genesis.dat
and genesis.dat.map
.
2.6.2 Rename the genesis
directory to genesis-data
by executing:
2.6.3 In the ~/testnet/genesis-data
directory create a file genesis.json
with the following contents:
Last updated