markdown structure formatting, rendered pages unchanged
This commit is contained in:
+10
-4
@@ -1,16 +1,19 @@
|
||||
---
|
||||
sidebar_position: 0
|
||||
---
|
||||
|
||||
# Setting Up
|
||||
|
||||
## Pre-Requisites
|
||||
## Pre-Requisites
|
||||
|
||||
There are a few things needed before installing.
|
||||
There are a few things needed before installing.
|
||||
|
||||
While logged in as the 'root' or 'admin' user, we add a 'jackal' user and give them root privileges.
|
||||
|
||||
### Enable Firewall Rules
|
||||
Enabling the firewall is important to ensure your hardware remains secure. The following commands will add rules required for access on both validators and providers:
|
||||
|
||||
Enabling the firewall is important to ensure your hardware remains secure. The following commands will add rules
|
||||
required for access on both validators and providers:
|
||||
|
||||
```sh
|
||||
sudo ufw allow 22
|
||||
@@ -31,7 +34,8 @@ The only additional port required for a provider is 3333:
|
||||
sudo ufw allow 3333
|
||||
```
|
||||
|
||||
If you are running a combined validator/provider, you need to allow all of the above ports. After adding ports to the rules list, you will need to start the firewall:
|
||||
If you are running a combined validator/provider, you need to allow all of the above ports. After adding ports to the
|
||||
rules list, you will need to start the firewall:
|
||||
|
||||
```sh
|
||||
sudo ufw enable
|
||||
@@ -73,6 +77,7 @@ sudo su - jackal
|
||||
```
|
||||
|
||||
### Installing required tools
|
||||
|
||||
This will install the necessary tools to build the jackal chain source, along with lz4 compression tool and jquery tool.
|
||||
|
||||
```sh
|
||||
@@ -81,6 +86,7 @@ sudo apt install build-essential lz4 jq
|
||||
```
|
||||
|
||||
### Installing Go
|
||||
|
||||
Follow more in-depth instructions to install Go v1.19 or higher [here](https://golang.org/doc/install).
|
||||
|
||||
On Ububtu you can install it with:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Nodes & Providers",
|
||||
"position":11
|
||||
"position": 11
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Hardware
|
||||
|
||||
We recommend a minimum hardware requirement of:
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Installing Canined
|
||||
|
||||
## Pre-Requisites
|
||||
## Pre-Requisites
|
||||
|
||||
See [Set-up](../1_install.md).
|
||||
|
||||
### Firewall Configuration
|
||||
|
||||
Configure UFW to only accept traffic on ports we use.
|
||||
|
||||
```bash
|
||||
@@ -20,12 +23,14 @@ ufw enable
|
||||
|
||||
:::tip
|
||||
|
||||
Perform the next follow steps as your `jackal` user with 'sudo' permissions
|
||||
Perform the next follow steps as your `jackal` user with 'sudo' permissions
|
||||
|
||||
:::
|
||||
|
||||
### Creating a Service
|
||||
You may want the daemon to run without you needing to supervise it. To turn the executable into a service follow these steps.
|
||||
|
||||
You may want the daemon to run without you needing to supervise it. To turn the executable into a service follow these
|
||||
steps.
|
||||
|
||||
First create the service file `/etc/systemd/system/canined.service`
|
||||
|
||||
@@ -33,7 +38,8 @@ First create the service file `/etc/systemd/system/canined.service`
|
||||
sudo nano /etc/systemd/system/canined.service
|
||||
```
|
||||
|
||||
Copy and paste the follow into the service file: (you may need to edit it if you've set a custom home directory location)
|
||||
Copy and paste the follow into the service file: (you may need to edit it if you've set a custom home directory
|
||||
location)
|
||||
|
||||
```conf
|
||||
[Unit]
|
||||
@@ -54,6 +60,7 @@ WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
Update systemd and enable the service file.
|
||||
|
||||
```sh
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable canined.service
|
||||
@@ -62,6 +69,7 @@ sudo systemctl enable canined.service
|
||||
## Building from Source
|
||||
|
||||
Replace `<VERSION>` with the current running version.
|
||||
|
||||
```sh
|
||||
git clone https://github.com/JackalLabs/canine-chain.git
|
||||
cd canine-chain
|
||||
@@ -72,6 +80,7 @@ make install
|
||||
```
|
||||
|
||||
From there you will be able to use `canined`, ex:
|
||||
|
||||
```sh
|
||||
canined version
|
||||
```
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
---
|
||||
sidebar_position: 3
|
||||
---
|
||||
|
||||
# Joining Testnet
|
||||
|
||||
After installing `canined`. You can join the testnet by following these steps:
|
||||
@@ -15,9 +16,11 @@ canined init <alias> --chain-id=<chain-id>
|
||||
|
||||
:::
|
||||
|
||||
Then we want to replace our generated genesis file with the one used to start the network. We also need to set our peers and seeds.
|
||||
Then we want to replace our generated genesis file with the one used to start the network. We also need to set our peers
|
||||
and seeds.
|
||||
|
||||
For an updated list of peers & seeds, please check [this page](https://github.com/JackalLabs/jackal-chain-assets/blob/main/testnet/seeds.md).
|
||||
For an updated list of peers & seeds, please
|
||||
check [this page](https://github.com/JackalLabs/jackal-chain-assets/blob/main/testnet/seeds.md).
|
||||
|
||||
```sh
|
||||
wget -O ~/.canine/config/genesis.json https://raw.githubusercontent.com/JackalLabs/jackal-chain-assets/main/testnet/genesis.json
|
||||
@@ -26,9 +29,9 @@ export SEEDS="84f520678ef59ea02f942fa6323ec562ca5a3249@45.79.161.178:26656,cecc0
|
||||
sed -i.bak -e "s/^seeds *=.*/seeds = \"$SEEDS\"/" ~/.canine/config/config.toml
|
||||
```
|
||||
|
||||
|
||||
As a validator, you'll need to set a minimum gas price like so:
|
||||
|
||||
```sh
|
||||
GAS="0.002ujkl"
|
||||
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"$GAS\"/" $HOME/.canine/config/app.toml
|
||||
```
|
||||
```
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
# Joining Mainnet
|
||||
|
||||
:::tip
|
||||
@@ -26,9 +27,10 @@ GAS="0.002ujkl"
|
||||
|
||||
sed -i.bak -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.canine/config/config.toml
|
||||
```
|
||||
|
||||
## Backing up key files
|
||||
|
||||
The created `node_key.json` and `priv_validator_key.json` cannot be recovered. These files ***must*** be backed up.
|
||||
The created `node_key.json` and `priv_validator_key.json` cannot be recovered. These files ***must*** be backed up.
|
||||
|
||||
```sh
|
||||
mkdir ~/key_backup
|
||||
@@ -36,16 +38,19 @@ cp ~/.canine/config/node_key.json ~/key_backup
|
||||
cp ~/.canine/config/priv_validator_key.json ~/key_backup
|
||||
```
|
||||
|
||||
You should also keep an offline backup. Using a program like `WinSCP`, you can easily copy these files to your personal desktop for safe storage/backup.
|
||||
You should also keep an offline backup. Using a program like `WinSCP`, you can easily copy these files to your personal
|
||||
desktop for safe storage/backup.
|
||||
|
||||
## Syncing to Current Height
|
||||
|
||||
### Snapshot method
|
||||
|
||||
Get a snapshot [here](http://snapshots.autostake.net/jackal-1/).
|
||||
|
||||
For the sake of this guide, the snapshot we download is named `jackal.tar.lz4`
|
||||
|
||||
If you plan on becoming a validator, before using the `unsafe-reset-all` flag, always besure to back up your `priv_validator_state.json` file.
|
||||
If you plan on becoming a validator, before using the `unsafe-reset-all` flag, always besure to back up
|
||||
your `priv_validator_state.json` file.
|
||||
|
||||
```sh
|
||||
canined unsafe-reset-all --keep-addr-book
|
||||
@@ -55,8 +60,10 @@ lz4 -c -d jackal.tar.lz4 | tar -x -C $HOME/.canine
|
||||
Then start the chain again.
|
||||
|
||||
### State Sync Method
|
||||
|
||||
There are a couple of ways to go about doing state sync.
|
||||
First is the easier route. Visit [Ping.pub](https://ping.pub/jackal/statesync) for Jackals State Sync configuration settings.
|
||||
First is the easier route. Visit [Ping.pub](https://ping.pub/jackal/statesync) for Jackals State Sync configuration
|
||||
settings.
|
||||
|
||||
Next, copy these settings from Ping.pub to your `config.toml` in the `[statesync]` section.
|
||||
|
||||
@@ -100,17 +107,19 @@ chunk_request_timeout = "10s"
|
||||
chunk_fetchers = "42"
|
||||
```
|
||||
|
||||
State syncing can take up to a few minutes to complete. Watch the logs to ensure it's happening. When a snapshot is found, you will see output in your log that is similar to this:
|
||||
State syncing can take up to a few minutes to complete. Watch the logs to ensure it's happening. When a snapshot is
|
||||
found, you will see output in your log that is similar to this:
|
||||
|
||||
```sh
|
||||
1PM INF Discovered new snapshot format=1 hash="S.�h�F���\"\x1d6+\x1e���ޅ��`v@�ц�����" height=1810000 module=statesync
|
||||
```
|
||||
|
||||
It will download, verify, and apply chuncks of blockchain data. When it finishes you will see it catching up to blocks
|
||||
It will download, verify, and apply chuncks of blockchain data. When it finishes you will see it catching up to blocks
|
||||
|
||||
### State Sync Method 2
|
||||
|
||||
The follow commandline code will edit your `config.toml` with the proper information for state syncing to the most recent snapshot 3000 blocks and beyond.
|
||||
The follow commandline code will edit your `config.toml` with the proper information for state syncing to the most
|
||||
recent snapshot 3000 blocks and beyond.
|
||||
|
||||
```sh
|
||||
STATE_SYNC_RPC=https://rpc.jackalprotocol.com:443
|
||||
@@ -145,4 +154,4 @@ sudo systemctl start jackal
|
||||
sudo journalctl -u jackal -f
|
||||
```
|
||||
|
||||
Watch the logs and ensure you are either state syncing correctly, or are syncing up to the current height.
|
||||
Watch the logs and ensure you are either state syncing correctly, or are syncing up to the current height.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Full Nodes",
|
||||
"position":0
|
||||
"position": 0
|
||||
}
|
||||
|
||||
@@ -1,27 +1,38 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Creating Provider
|
||||
|
||||
## Disclaimer
|
||||
|
||||
This guide assumes you either have access to a full node over a network connection or are using the same machine as the full node.
|
||||
This guide assumes you either have access to a full node over a network connection or are using the same machine as the
|
||||
full node.
|
||||
|
||||
## Networking
|
||||
To allow your provider to be used by the Jackal Protocol Dashboard, please ensure you have a reverse proxy system setup and have a registered domain name pointing to your provider. We recommend using [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
|
||||
|
||||
If you have UPNP enabled on your router, your provider will be open to the internet by default at port `3333`. You can find the address it can be connected to by running `canined network ip`.
|
||||
To allow your provider to be used by the Jackal Protocol Dashboard, please ensure you have a reverse proxy system setup
|
||||
and have a registered domain name pointing to your provider. We recommend
|
||||
using [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
|
||||
|
||||
If you have UPNP enabled on your router, your provider will be open to the internet by default at port `3333`. You can
|
||||
find the address it can be connected to by running `canined network ip`.
|
||||
|
||||
## Setting up ZFS Without Mirroring
|
||||
|
||||
Setting up ZFS allows us to combine multiple drives together, in this case we are merging two drives. We don't recommend you only merge drives with striping and instead we recommend mirroring. However mirroring is a longer process and different for each configuration. In our case, this machine is only running with 24TB across 2 drives. We are less concerned about a drive failing as that would wipe half our storage anyways.
|
||||
Setting up ZFS allows us to combine multiple drives together, in this case we are merging two drives. We don't recommend
|
||||
you only merge drives with striping and instead we recommend mirroring. However mirroring is a longer process and
|
||||
different for each configuration. In our case, this machine is only running with 24TB across 2 drives. We are less
|
||||
concerned about a drive failing as that would wipe half our storage anyways.
|
||||
|
||||
List all drives with :
|
||||
|
||||
```sh
|
||||
sudo fdisk -l
|
||||
```
|
||||
|
||||
You should end up seeing something like this
|
||||
|
||||
```sh
|
||||
...
|
||||
|
||||
@@ -44,7 +55,7 @@ Disk identifier: D2827F71-7F0A-EE4A-BB12-1B2172641DBE
|
||||
...
|
||||
```
|
||||
|
||||
Note down the Disk paths that you wish to use for your storage provider, in this case it is `/dev/sdb` and `/dev/sda`.
|
||||
Note down the Disk paths that you wish to use for your storage provider, in this case it is `/dev/sdb` and `/dev/sda`.
|
||||
|
||||
We install ZFS and create a new pool as follows:
|
||||
|
||||
@@ -56,4 +67,5 @@ sudo zpool create {pool-name} /dev/sda /dev/sdb ...
|
||||
sudo zpool status
|
||||
```
|
||||
|
||||
This folder will now have the drives mounted at `/{pool-name}`. For more in-depth guides to using zfs, check out [this page](https://zfsonlinux.org/).
|
||||
This folder will now have the drives mounted at `/{pool-name}`. For more in-depth guides to using zfs, check
|
||||
out [this page](https://zfsonlinux.org/).
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Setting Up JProvd
|
||||
|
||||
## Pre-Requisites
|
||||
## Pre-Requisites
|
||||
|
||||
See [Set-up](../1_install.md).
|
||||
|
||||
## Installing
|
||||
@@ -16,11 +18,13 @@ Check latest version [here](https://github.com/JackalLabs/canine-provider/releas
|
||||
|
||||
:::note
|
||||
|
||||
'Setting Up' instructions must be followed fully to add necessary golang path info to the current users ~/.profile. If these steps are skipped, 'make install' will not build jprovd--the provider daemon. Please ensure to perform the below steps as the 'jackal' user you previously made.
|
||||
'Setting Up' instructions must be followed fully to add necessary golang path info to the current users ~/.profile. If
|
||||
these steps are skipped, 'make install' will not build jprovd--the provider daemon. Please ensure to perform the below
|
||||
steps as the 'jackal' user you previously made.
|
||||
|
||||
:::
|
||||
|
||||
Install make and confirm installation.
|
||||
Install make and confirm installation.
|
||||
|
||||
```sh
|
||||
sudo apt update
|
||||
@@ -31,7 +35,7 @@ make --version
|
||||
|
||||
```
|
||||
|
||||
Build jprovd and source the .profile to ensure your shell can find jprovd. Confirm installation.
|
||||
Build jprovd and source the .profile to ensure your shell can find jprovd. Confirm installation.
|
||||
|
||||
```sh
|
||||
git clone https://github.com/JackalLabs/canine-provider.git
|
||||
@@ -50,7 +54,7 @@ jprovd version
|
||||
|
||||
```
|
||||
|
||||
If you used ZFS to make a zpool. Give ownership of the zpool to the jackal user.
|
||||
If you used ZFS to make a zpool. Give ownership of the zpool to the jackal user.
|
||||
|
||||
```sh
|
||||
|
||||
@@ -66,32 +70,32 @@ Your keybase identity can be left as `""` if you don't want to link your provide
|
||||
|
||||
:::
|
||||
|
||||
1. Export the path to your storage pool
|
||||
1. Export the path to your storage pool
|
||||
|
||||
```sh
|
||||
export PHOME={path-to-pool-from-before}
|
||||
```
|
||||
|
||||
2. Generate your provider's private key
|
||||
2. Generate your provider's private key
|
||||
|
||||
```sh
|
||||
jprovd client gen-key --home=$PHOME
|
||||
```
|
||||
|
||||
3. Configure the chain-id
|
||||
3. Configure the chain-id
|
||||
|
||||
```sh
|
||||
jprovd client config chain-id {chain-id} --home=$PHOME
|
||||
```
|
||||
|
||||
4. Configure the rpc node your provider will use to connect to the chain
|
||||
4. Configure the rpc node your provider will use to connect to the chain
|
||||
|
||||
```sh
|
||||
jprovd client config node {your node} --home=$PHOME
|
||||
```
|
||||
|
||||
Some users may find it easier to complete steps 3 and 4 manually. Instructions for Ubuntu are below:
|
||||
|
||||
|
||||
In your terminal, while inside of the PHOME directory, type 'nautilus'. This will open the nautilus file explorer.
|
||||
At the top right corner, make sure 'Show Hidden Files' is checked.
|
||||
Navigate to your '.jackal-storage' folder to access the config folder.
|
||||
@@ -99,17 +103,19 @@ Open the client.toml file to manually type in the 'chain-id' and 'node'.
|
||||
Save and close the client.toml file.
|
||||
|
||||
Testnet and Mainnet chain-ids can be found here: https://github.com/JackalLabs/jackal-chain-assets.
|
||||
If you are not running your own tendermint RPC node, Jackal Labs is currently hosting a testnet tendermint RPC node. Endpoint below:
|
||||
|
||||
If you are not running your own tendermint RPC node, Jackal Labs is currently hosting a testnet tendermint RPC node.
|
||||
Endpoint below:
|
||||
|
||||
https://testnet-rpc.jackalprotocol.com:443
|
||||
|
||||
We will also be hosting a tendermint rpc node for mainnet, which will be made accessible to the public at launch of Jackal Storage.
|
||||
|
||||
Before completing step 5 below, your account will need tokens.
|
||||
Testnet tokens can be obtained at https://testnet-faucet.jackalprotocol.com/
|
||||
Mainnet tokens can be purchased on https://frontier.osmosis.zone/
|
||||
We will also be hosting a tendermint rpc node for mainnet, which will be made accessible to the public at launch of
|
||||
Jackal Storage.
|
||||
|
||||
5. Initialize the provider
|
||||
Before completing step 5 below, your account will need tokens.
|
||||
Testnet tokens can be obtained at https://testnet-faucet.jackalprotocol.com/
|
||||
Mainnet tokens can be purchased on https://frontier.osmosis.zone/
|
||||
|
||||
5. Initialize the provider
|
||||
|
||||
```sh
|
||||
jprovd init {FQDN} {STORAGE_IN_BYTES} {KEYBASE_IDENTITY} --home=$PHOME
|
||||
@@ -121,10 +127,10 @@ example:
|
||||
jprovd init "https://storagep1.chainstrategies.cloud" "9000" "" --home=$PHOME
|
||||
```
|
||||
|
||||
Please note that 'https://' is required to be included in the FQDN or init will throw an error.
|
||||
Link for TB to Bytes converter: https://www.convertunits.com/from/TB/to/byte
|
||||
Please note that 'https://' is required to be included in the FQDN or init will throw an error.
|
||||
Link for TB to Bytes converter: https://www.convertunits.com/from/TB/to/byte
|
||||
|
||||
6. Start the provider
|
||||
6. Start the provider
|
||||
|
||||
```sh
|
||||
jprovd start --home=$PHOME
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Storage Providers",
|
||||
"position":2
|
||||
"position": 2
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Hardware",
|
||||
"position":0
|
||||
"position": 0
|
||||
}
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# DIY Build
|
||||
For DIY individuals looking to power web3 infrastructure and increase your ROI- here is the recommended system for serious individual storage providers.
|
||||
|
||||
| Component|Recommendation| Units |
|
||||
| ------------- |:-------------| :-----|
|
||||
| CPU | AMD Ryzen 7 5700G 3.8 GHz 8-Core Processor | 1
|
||||
| Motherboard | MSI B450 TOMAHAWK MAX II ATX AM4 Motherboard | 1
|
||||
| Memory | 128 GB (2 x 64 GB) Memory | 1
|
||||
| Storage | Kingston A400 960 GB 2.5" Solid State Drive | 1
|
||||
| Storage | Seagate EXOS Enterprise 14 TB 3.5" 7200RPM Internal Hard Drive | 5 |
|
||||
| Case | Cooler Master N400 ATX Mid Tower Case | 1
|
||||
| Power Supply | Corsair HX750 Platinum 750 W 80+ Platinum Certified Fully Modular ATX Power Supply | 1
|
||||
| Case Fan | Noctua S12B redux-700 33.49 CFM 120 mm Fan | 2
|
||||
| Total Cost Estimate | $2014.08 USD
|
||||
For DIY individuals looking to power web3 infrastructure and increase your ROI- here is the recommended system for
|
||||
serious individual storage providers.
|
||||
|
||||
| Component | Recommendation | Units |
|
||||
|---------------------|:------------------------------------------------------------------------------------|:------|
|
||||
| CPU | AMD Ryzen 7 5700G 3.8 GHz 8-Core Processor | 1
|
||||
| Motherboard | MSI B450 TOMAHAWK MAX II ATX AM4 Motherboard | 1
|
||||
| Memory | 128 GB (2 x 64 GB) Memory | 1
|
||||
| Storage | Kingston A400 960 GB 2.5" Solid State Drive | 1
|
||||
| Storage | Seagate EXOS Enterprise 14 TB 3.5" 7200RPM Internal Hard Drive | 5 |
|
||||
| Case | Cooler Master N400 ATX Mid Tower Case | 1
|
||||
| Power Supply | Corsair HX750 Platinum 750 W 80+ Platinum Certified Fully Modular ATX Power Supply | 1
|
||||
| Case Fan | Noctua S12B redux-700 33.49 CFM 120 mm Fan | 2
|
||||
| Total Cost Estimate | $2014.08 USD
|
||||
|
||||
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Enterprise Build
|
||||
For teams looking to build a large storage system of ~2.1 Petabytes of storage, the estimated base price of the box with drives is ~$70,000 USD. This does not account for variable expenses including the regional costs of:
|
||||
|
||||
For teams looking to build a large storage system of ~2.1 Petabytes of storage, the estimated base price of the box with
|
||||
drives is ~$70,000 USD. This does not account for variable expenses including the regional costs of:
|
||||
|
||||
- Power
|
||||
- Internet
|
||||
- HVAC
|
||||
- Professionals
|
||||
- Professionals
|
||||
|
||||
Those looking to build an enterprise storage provider, reach out to the team for recommendations and support.
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
# Creating Validator
|
||||
|
||||
# Creating Validator
|
||||
|
||||
:::tip
|
||||
|
||||
@@ -38,11 +38,14 @@ It is the only way to recover your account if you ever forget your password.
|
||||
some words forming mnemonic seed will be placed here you have to write them down and keep them safe
|
||||
```
|
||||
|
||||
Besure to back up the seed phrase of your validator wallet. It's also recommened to keep an offline copy along with your key files. Remember, your key files cannot be restored and ***must*** be backed up. See the installation page for instructions.
|
||||
Besure to back up the seed phrase of your validator wallet. It's also recommened to keep an offline copy along with your
|
||||
key files. Remember, your key files cannot be restored and ***must*** be backed up. See the installation page for
|
||||
instructions.
|
||||
|
||||
You should also backup your keyring files.
|
||||
|
||||
Change `WALLET_NAME` to the name of your wallet.
|
||||
|
||||
```sh
|
||||
mkdir ~/keyring_backup
|
||||
cp ~/.canine/WALLET_NAME.info ~/keyring_backup
|
||||
@@ -54,6 +57,7 @@ cp ~/.canine/keyhash ~/keyring_backup
|
||||
### Configure Gas Prices
|
||||
|
||||
As a validator, you'll need to set a minimum gas price like so:
|
||||
|
||||
```sh
|
||||
GAS="0.02ujkl"
|
||||
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"$GAS\"/" $HOME/.canine/config/app.toml
|
||||
@@ -61,9 +65,14 @@ sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"$GAS\"/" $HOME/
|
||||
|
||||
### Create Your Validator
|
||||
|
||||
Before continuing, please note that `commission-max-change` and `commission-max-rate` cannot be changed once you set them. Your `commission-rate` may be changed once per day.
|
||||
Before continuing, please note that `commission-max-change` and `commission-max-rate` cannot be changed once you set
|
||||
them. Your `commission-rate` may be changed once per day.
|
||||
|
||||
There are a few things you will need to alter in this command. `amount` needs to be changed to what you are starting
|
||||
your self bond as. `from` needs to be the name of your wallet you created earlier.
|
||||
The `moniker`, `details`, `identity`, `website`, and `security-contact` should all be filled with the appropiate
|
||||
information.
|
||||
|
||||
There are a few things you will need to alter in this command. `amount` needs to be changed to what you are starting your self bond as. `from` needs to be the name of your wallet you created earlier. The `moniker`, `details`, `identity`, `website`, and `security-contact` should all be filled with the appropiate information.
|
||||
```sh
|
||||
canined tx staking create-validator \
|
||||
--amount 1000000ujkl \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Validators",
|
||||
"position":1
|
||||
"position": 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user