These directions are written for Debian / Ubuntu and you should use Debian 10 Buster or Ubuntu 20.04.
Note: Please do not login to your server via your hosting provider's console, use SSH at all times.
# 1.1. Install dependencies and get your machine up to date:
apt update
apt upgrade -y
apt install -y software-properties-common gnupg vnstat ifstat iftop atop ufw fail2ban
curl -s https://get.docker.com | bash
# 1.2. Choke the network
sudo ufw allow ssh
sudo ufw enable
sudo ufw allow http
sudo ufw allow https
ufw allow 1776
# 1.3. Set up the node
docker run -d --net=host -v blurtd:/blurtd --name blurtd registry.gitlab.com/blurt/blurt/witness:dev /usr/bin/blurtd --data-dir /blurtd --plugin "witness account_by_key account_by_key_api condenser_api database_api network_broadcast_api transaction_status transaction_status_api rc_api" --webserver-http-endpoint 127.0.0.1:8091 --webserver-ws-endpoint 127.0.0.1:8090
# For Ubuntu 20.04 servers:
apt install systemd-timesyncd
# For Debian 10 servers:
systemctl start systemd-timesyncd
# 2.1. Check your blockchain sync results in Docker: It will take 3 to 4 hours.
docker logs blurtd -f
# To stop viewing logs, just press ctrl+c# 2.2. Enter the container, navigate to /blurtd and setup cli_wallet:# NB it is very important to run the cli wallet from /blurtd)
docker exec -it blurtd /bin/bash
cd /blurtd
# Enter the CLI wallet
cli_wallet
# The first thing you should do is set a password, like:
set_password yourpassword
# Unlock Wallet
unlock yourpassword
# Generate Brain Key
suggest_brain_key
# Copy down its entire output and keep it safely (keepass.info or 1password.com are good password keepers. You'll be using this brain key to control # your Witness.# Import the generated Brain WIF Key
import_key Insert_brain_wif_priv_key_here
# Import your Blurt account's Active Key (Note: Pre 20 March 2020 Steem keys will also work)# Note: The key should start with a 5 as per the example key below:
import_key 5KABCDEFGHIJKLMNOPQRSTUVXYZ
# Add private brain key to config.ini to sign blocks as a Witness# Exit wallet via:
ctrl+d
# Exit Docker
exit
# Edit config.ini
nano /var/lib/docker/volumes/blurtd/_data/config.ini
# Navigate to these lines and edit them as follows, nb to remove the '#' prefix from the command lines# name of witness controlled by this node (e.g. initwitness )
witness = "blurtaccountname"
# WIF PRIVATE KEY to be used by one or more witnesses or miners
private-key = Insert_brain_wif_priv_key_here
# Press ctrl+o and then Enter to save, ctrl+x to exit.# Restart blurtd
docker restart blurtd
# Enter cli_wallet again and broadcast your witness
docker exec -it blurtd /bin/bash
cd /blurtd
cli_wallet
unlock yourpassword
update_witness "blurtaccountname" "https://your-blog-url" "BRAIN_KEY_PUB_KEY_GOES_HERE" {"account_creation_fee":"100.000 BLURT","maximum_block_size":65536} true
# Updating Fees
update_witness_properties "blurtaccountname" {"key":"BRAIN_KEY_PUB_KEY_GOES_HERE", "account_creation_fee":"100.000 BLURT","maximum_block_size":65536,"account_subsidy_budget": 797, "account_subsidy_decay": 347321, "operation_flat_fee":"0.001 BLURT","bandwidth_kbytes_fee":"0.250 BLURT"} true
# Exit wallet via:
ctrl+d
# Exit Docker
exit
# Check https://blocks.blurtwallet.com/#/witnesses to see if you are producing in a similar block range to other witnesses.----------------# 3. Check logs----------------# Check logs
docker logs blurtd -f
soon will appear your node on https://blurtwallet.com/~witnesses and you will able to produce blocks.
Thank you
--------------------------------------------------------
That's all
Thanks for documenting this for us @zahidsun!
Thank you for this post @zahidsun! very clear and straight forward! well done!
Thanks for the effort, may Allah increase your skills.
Thanks for this detail, but still unsure of how much to set fees. I am just starting.
@zahidsun
how can i check, that i made all correct? Semmes so, but I can only see the top 100 wittnes on:
https://blurtwallet.com/~witnesses and
https://blocks.blurtwallet.com/#/witnesses
yes, type your witness name and vote your self, more details join our official discord server
Which Discordserver?
I did an self vote, it worked.
Thank you for your help
https://discord.gg/dxThB8k9
witness vote done