If you install the Worker node via Docker, please initialize and run it using Docker as well. If you install the Worker node through a local installation, please refer to the local operation section.
You have to deposit a small amount of the testnet BNB (tBNB) into the worker account to facilitate the sending of a confirmation transaction.
Run Node via Docker (Recommended)
There are three steps to complete when starting a Worker node via Docker:
Export Node Environment Variables
Initialize Node Configuration
Launch the Node
Export Node Environment Variables
To streamline the Docker installation procedure, we utilize certain environment variables. These variables are crucial for the operation of the NuLink Worker.
Select a password with at least 8 characters to lock and unlock the private storage created by the NuLink Worker. It's important to remember this password for future access.
This password is used to unlock the keystore file of your Worker account. You would have established this password when creating the Worker account via Geth. Make sure you enter the same one!!!
# step 1DetectedIPv4address (8.219.186.125) - Is this the public-facing address of Ursula? [y/N]: yPleaseprovideapasswordtolockOperatorkeys.Donotforgetthispassword,andideallystoreitusingapasswordmanager.# step 2Enternulinkkeystorepassword (8 characterminimum): xxxxxxRepeatforconfirmation:xxxxxxBackupyourseedwords,youwillnotbeabletoviewthemagain.xxxxxxxxxxxxxxxxxxxxxxxx# step 3Haveyoubackedupyourseedphrase? [y/N]: y# step 4Confirmseedwords:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxPublicKey:02bb2067d21a677ce928967c0ece79a9PathtoKeystore:/home/circleci/.local/share/nulink/keystore-Youcanshareyourpublickeywithanyone.Othersneedittointeractwithyou.-Neversharesecretkeyswithanyone!-Backupyourkeystore!Characterkeysarerequiredtointeractwiththeprotocol!-Rememberyourpassword!Withoutthepassword,it's impossible to decrypt the key!Generated configuration file at default filepath /home/circleci/.local/share/nulink/ursula.json* Review configuration -> nulink ursula config* Start working -> nulink ursula run
Launch the Node
Before performing this step, make sure that the environment variable has been set successfully. You can verify it using the following method, execute the following command:
The following command will start the node. Make sure you use the same host directory as the configuration.
Remark1: You need to claim some BNB(test) token for Worker account as gas fee.
Remark2: If you encounter error when starting Worker node, first please check that the port 9151 has not been occupied by other process. If still not working, please check there is only one configuration json file in the </path/to/host/machine/directory>
# step 1DetectedIPv4address (8.219.188.70) - Is this the public-facing address of Worker? [y/N]: yPleaseprovideapasswordtolockOperatorkeys.Donotforgetthispassword,andideallystoreitusingapasswordmanager.# step 2Enternulinkkeystorepassword (8 characterminimum): xxxxxxRepeatforconfirmation:xxxxxxBackupyourseedwords,youwillnotbeabletoviewthemagain.hammer fatal jazz era hurt shoulder stand story find move earn much actor animal stamp know vital odor coin electric torch quick siege tonight
# step 3Haveyoubackedupyourseedphrase? [y/N]: y# step 4Confirm seed words: hammer fatal jazz era hurt shoulder stand story find move earn much actor animal stamp know vital odor coin electric torch quick siege tonight
GeneratedkeystorePublicKey:02dacea4c7f5563004af37f282ca10f7PathtoKeystore:/root/.local/share/nulink/keystore-Youcanshareyourpublickeywithanyone.Othersneedittointeractwithyou.-Neversharesecretkeyswithanyone!-Backupyourkeystore!Characterkeysarerequiredtointeractwiththeprotocol!-Rememberyourpassword!Withoutthepassword,it's impossible to decrypt the key!Generated configuration file at non-default filepath /root/.local/share/nulink/ursula-02dacea4.json* NOTE: for a non-default configuration filepath use `--config-file "/root/.local/share/nulink/ursula-02dacea4.json"` with subsequent `ursula` CLI commands
* Review configuration -> nulink ursula config* Start working -> nulink ursula run
Launch the Node
Run worker node using the initialized configuration.
Enter the above startup command and press enter to prompt for the passwords of ETH account and NuLink keystore, which are set in the initialization phase.
Note: operator account needs to have tokens on the corresponding chain
Example Input:
nulinkursularun--no-block-until-ready
Example Output:
Enterethereumaccountpassword (0x7bD7B1266868B34dA4929501FfEA4ac737dA0E93):Enternulinkkeystorepassword:AuthenticatingUrsulaLoadedUrsula (horus)✓ExternalIPmatchesconfigurationStartingservices✓NodeDiscovery (Horus)✓Operator0x7bD7B1266868B34dA4929501FfEA4ac737dA0E93isfundedwith0.499959405ETH✓ Operator 0x7bD7B1266868B34dA4929501FfEA4ac737dA0E93 is bonded to staking provider 0xf3D6ad89E34b1Cf8325EA614fa901eA4F34Be14a
✓Operatoralreadyconfirmed.Notstartingworktracker.✓StartOperatorBondedTracker✓RestServerhttps://8.219.188.70:9151Working~KeepUrsulaOnline!
Now the Worker address(e.g: 0x7bD7B1266868B34dA4929501FfEA4ac737dA0E93) is ready for bonding operation.
Restart the Worker Node
Occasionally, the staker may find it necessary to restart the worker node. Below is the command for restarting the currently running nodes: