- Introduction
- Tutorial for users
launch-dill-node is a collection of scripts for operating the dill node, specifically including launching a new node, adding validators to the launched node, stopping the node, starting the node, viewing the validator's public key, and exiting the validator from chain.
In a host with no dill node running before, follow below steps to launch a new one.
Open your terminal and execute the following command to launch a new Dill node:
curl -sO https://raw.githubusercontent.com/DillLabs/launch-dill-node/main/dill.sh && chmod +x dill.sh && ./dill.shYou need to choose a node type
Please select the node type to proceed [1. light, 2. full]: - Choose
1to run a light node. - Choose
2to run a full node.
Please note that for pool validator you need to run a full node.
After launching successfully, you should see an output like this:
Checking if the node is up and running...
node running, congratulations 😄
Please select the validator operation [1. add a solo validator, 2. add a pool validator, 3. recover a validator]:- Choose
1to add a solo validator to your node. - Choose
2to add a pool validator to your node. - Choose
3to recover a validator to your node.
You will be prompted to generate your validator key. You can either create a new mnemonic or use an existing one.
Validator Keys are generated from a mnemonic
Please choose an option for mnemonic source [1, From a new mnemonic, 2, Use existing mnemonic] [1]: - Choose
1to generate a new mnemonic (ensure you save this securely). - Choose
2if you already have a mnemonic and would like to use it.
A withdrawal address is required to complete the next setup
Please enter your withdrawal address:And also a deposit amount. For full node it's like:
Please enter a deposit amount from [3600, 7200, ..., 36000]:and for light node:
Please enter a deposit amount from [3600, 7200, ..., 32400]:To achieve full validator status, a stake of 36,000 tokens is required. If the staked amount is below this threshold, the validator will operate as a light validator. The staked amount must be a multiple of 3,600.
You will see the following messages after successfully generated the validator key and the deposit:
_______ __ __ __
| \ (__) | | | |
| ___ \ __ | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| |___| | | | | | | |
| / | | | | | |
|_______/ |__| |__| |__|
Creating your keys.
Creating your keystores: [####################################] 1/1
Verifying your keystores: [####################################] 1/1
Verifying your deposits: [####################################] 1/1
Success!
Your keys can be found at: <YOUR_FOLDER_PATH>/dill/validator_keysThe generated file <YOUR_FOLDER_PATH>/dill/validator_keys/deposit_data-xxxx.json is required for staking later.
The system displays this confirmation message when the generated key has been successfully added to the node.
[2025-04-07 19:25:15] INFO accounts: Imported accounts [YOUR_VALIDATOR_PUBLIC_KEY], view all of them by running `accounts list`You will be prompted to generate your validator keys. You can either create a new mnemonic or use an existing one.
Validator Keys are generated from a mnemonic
Please choose an option for mnemonic source [1, From a new mnemonic, 2, Use existing mnemonic] [1]: - Choose
1to generate a new mnemonic (ensure you save this securely). - Choose
2if you already have a mnemonic and would like to use it.
A valid deposit wallet address must be provided. This designated address should be used as the originating account for the deposit transaction.
Please input your deposit wallet address:The system will prompt for validator runtime duration specification. Upon reaching the specified duration threshold, the validator will automatically exit.
Please select validator running duration [1: 45 days, 2: 90 days] [1]:- Choose
1the pool validator will run for 45 days. - Choose
2the pool validator will run for 90 days.
You will see the following messages after successfully generated the validator key and the deposit:
_______ __ __ __
| \ (__) | | | |
| ___ \ __ | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| |___| | | | | | | |
| / | | | | | |
|_______/ |__| |__| |__|
Creating your keys.
Creating your keystores: [####################################] 1/1
Verifying your keystores: [####################################] 1/1
Verifying your deposits: [####################################] 1/1
Success!
Your keys can be found at: <YOUR_FOLDER_PATH>/dill/validator_keysAnd the last line of the output is a system-generated reminder indicating the location of the deposit file:
Pool valildator deposit is written to <YOUR_FOLDER_PATH>/dill/validator_keys/deposit_pool_data-xxxx.jsonYou will be prompted to enter your mnemonic. Normaly mnemonics can be found at "<YOUR_FOLDER_PATH>/dill/validator_keys":
Enter your existing mnemonic:The system will prompt for a validator index input:
Please enter a number as your validator public key index:When unspecified, the system automatically assigns 0 as the default public key index value.
You will see the following messages after successfully generated the validator key:
_______ __ __ __
| \ (__) | | | |
| ___ \ __ | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| |___| | | | | | | |
| / | | | | | |
|_______/ |__| |__| |__|
Creating your keys.
Creating your keystores: [####################################] 1/1
Verifying your keystores: [####################################] 1/1
Verifying your deposits: [####################################] 1/1
Success!
Your keys can be found at: <YOUR_FOLDER_PATH>/dill/validator_keysThe system displays this confirmation message when the generated key has been successfully added to the node.
[2025-04-07 19:25:15] INFO accounts: Imported accounts [YOUR_VALIDATOR_PUBLIC_KEY], view all of them by running `accounts list`- Full node: you can run multiple full validators.
- Light node: you can run multiple light validators on it.
Execute the following command to add a validator on the full or light node.
<YOUR_FOLDER_PATH>/dill/2_add_validator.shThen please refer to Add a solo validator to your node.
Pool validators can only be added to a full node.
Execute the following command to add a validator on the full or light node.
<YOUR_FOLDER_PATH>/dill/3_add_pool_validator.shThen please refer to Add a pool validator to your node.
Execute the following command to recover your validator key.
<YOUR_FOLDER_PATH>/dill/4_recover_validator.shThen please refer to Recover a validator to your node.
In the dill directory, there are also some useful scripts that will be used in daily operations.
- Check if the dill node is running healthily
./health_check.sh- View the public key of the validators
./show_pubkey.sh- Stop the dill node
./stop_dill_node.sh- Start the dill node
./start_dill_node.sh- Exit the validator(s)
./exit_validator.sh- Update node version
curl -sO https://raw.githubusercontent.com/DillLabs/launch-dill-node/main/upgrade.sh && chmod +x upgrade.sh && ./upgrade.sh- Upgrade node type
./light_to_full.sh