I followed the instructions from this article.
I am a docker fan and user, so the minute I came across this article I was excited, its model was clear to me and I could see the end relatively quickly. So I went with it.
As a newbie to witnessing on the steem network, I thought all was done and dusted.
But Nah!! Nada!! I was just warming up.
I had earlier come across and somewhat ignored @klye's excellent post, I was initially overwhelmed.
After I kept checking steemd and asking question about my witness status.
It became apparent that something was missing or I had missed some steps. I had gone half way in my setup it seemed.
So I went back and thoroughly read @klye's post and notice that I had used the wrong set of private keys.
The set of keys that are required to be used are the active keys.
So I click the login to show button, logged in and then clicked the show private key to obtain it.
I then copied it to config.ini, whilst there I updated witness name as well to my steem it username
Take note that the public keys start with"STM" and private keys start with a "5".
Next I opened up my wallet run.sh wallet
. On opening this up you are required to set your password.
set_password "passwordof10"
After setting the password, you notice that the prompt would change to from new to locked.
So you will need to unlock it with unlock "passwordof10"
. After this is done you need to import you private active key
import_key "5xxxxxxxxxxx"
After importing our active private key you need to generate your account key pair
By running suggest_brain_key
This will return an object like this:
suggest_brain_key{
"brain_priv_key": "WORD WORD WORD WORD WORD WORD WORD WORD ",
"wif_priv_key": "5xxxxxxxxx",
"pub_key": "STMxxxxxxx"
}
After the aforementioned, you need to broadcast your intent to become a witness.
update_witness "mattgimel" "https://steemit.com/witness-category/@mattgimel/calling-witness-matt" "STMxxxxxxx" {"account_creation_fee":"0.200 STEEM","maximum_block_size":131072,"sbd_interest_rate":0} true
After running the command I got this error:
10 assert_exception: Assert Exception
approving_account_objects.size() == v_approving_account_names.size():
{"aco.size:":0,"acn":1}
th_a wallet.cpp:580 sign_transaction
I took this to witness channel on steem.chat, where I learnt that I may not have the required permission to sign the transaction.
This appear odd at first, but after much suggestion and probes.
@someguy123 made this commit update that fixed the issue.
I git pull
the update and ./run.sh remote_wallet
unlocked and tried sending my update_witness again and this time it work.
It just happens that I had earlier cloned the latest hard fork update v0.19.0rc2
.
In all I am pretty glad to be an actual witness yay.
Thanks to @someguy123, @klye, @jesta, @cyrano, @fubar-dhr et al for all your help.
Looking forward to creating blocks..
Regards,
Matt
Summary of steps:
apt update && apt install curl git && curl https://get.docker.com | sh
git clone https://github.com/Someguy123/steem-docker.git && cd steem-docker
Edit run.sh:
See line here. https://github.com/Someguy123/steem-docker/blob/93a865d57d2b49265e2cc7a2813d6e6adb49dea8/run.sh#L115
CHANGE:
docker run $DPORTS -v /dev/shm:/shm -v "$DATADIR":/steem -d --name $DOCKER_NAME -t steem
TO:
docker run $DPORTS --restart=always -v /dev/shm:/shm -v "$DATADIR":/steem -d --name $DOCKER_NAME -t steem
./run.sh install && cd data/witness_node_data_dir && vim config.ini
# Remember to comment out p2p-endpoint and rpc-endpoint if they're not needed
# p2p-endpoint is for SEED nodes, rpc-endpoint is for RPC's but it also allows inspection
# of your witness's synchronization
state shared-file-size = 12G
# If you want to use the disk instead of memory, change to /steem/ instead of /shm/
shared-file-dir = /shm/
Change the state shared-file-size to the available RAM size. 12G is the default 8G he minimum.
# Adjust /dev/shm to 13gb
cd ../../ && ./run.sh shm_size 13G && touch .env
Copy the below to .env
PORTS=
DOCKER_NAME=witness
cd data/witness_node_data_dir && vim config.ini,
Now disable the p2p-endpoint, and fill out your witness details. Remember to use the active private key, see above images for clarification.
# p2p-endpoint = witness = "mattgimel"
private-key = 5YOURACTIVEPRIVATEKEY
cd ../../ && ./run.sh start && sleep 20 && ./run.sh remote_wallet
new>> set_password “Insert1YOUR2favourite10STRONG69pAsSwOrD420here9000"
locked>> unlock “Insert1YOUR2favourite10STRONG69pAsSwOrD420here9000"
unlock>> import_key 5YOURACTIVEPRIVATEKEY
unlock>> suggest_brain_key # Save this WIF object offline.. don't know trying to find out why
unlock>> update_witness "mattgimel" "https://steemit.com/witness-category/@mattgimel/calling-witness-matt" "STMYOURACTIVEPUBLICKEY" {"account_creation_fee":"0.200 STEEM","maximum_block_size":131072,"sbd_interest_rate":0} true
CTRL-D to exit console
NB:
If would like to automatically start your SIAB docker instances.. on @someguy123's advice..
CHANGE:
docker run $DPORTS -v /dev/shm:/shm -v "$DATADIR":/steem -d --name $DOCKER_NAME -t steem
TO:
docker run $DPORTS --restart=always -v /dev/shm:/shm -v "$DATADIR":/steem -d --name $DOCKER_NAME -t steem