BitShares Forum
Main => Technical Support => Topic started by: wmbutler on October 28, 2015, 03:00:33 pm
-
All,
I'm ready to be a witness. I'm running xeroc's docker container for the full node without RPC. Is there a way to do this without going though the 0.9.3 key process? I have a 2.0 wallet with a number of accounts that I could use as a witness. Thanks for any help you can provide.
-
you need a lifetime member account to create a new witness .. and you will need to also run the cli-wallet (another docker container available) .. from there you can use the rest of the guide:
https://github.com/cryptonomex/graphene/wiki/How%20to%20become%20an%20active%20witness%20in%20BitShares%202.0#becoming-a-witness
-
Run the Docker cli image
./run-cli-wallet.sh
Get the CONTAINER ID
docker ps
Connect to it with a bash shell
sudo docker exec -ti [CONTAINER-ID] bash
Now call the web_wallet cli
./programs/cli_wallet/cli_wallet -s ws://<external_server_ip>:8090
-
you need to run the other launch script that also exposes the RPC port .. then you can connect to it via cli_wallet ala
cli_wallet -s ws://0.0.0.0:8090
-
Error:
686634ms th_a application.cpp:233 reset_websocket_serv ] Configured websocket rpc to listen on 0.0.0.0:8090
686634ms th_a witness.cpp:119 plugin_startup ] witness plugin: plugin_startup() begin
686635ms th_a witness.cpp:136 plugin_startup ] No witnesses configured! Please add witness IDs and private keys to configuration.
686635ms th_a witness.cpp:137 plugin_startup ] witness plugin: plugin_startup() end
686635ms th_a main.cpp:176 main ] Started witness node on a chain with 0 blocks.
Followed this syntax by adding to build/bitshares-2-trusted-full-node/docker/start.sh
and stopping and starting the container:
/bitshares-2/programs/witness_node/witness_node \
--p2p-endpoint="0.0.0.0:9090" \
--data-dir=/data_trusted_node/ \
--replay-blockchain \
--rpc-endpoint="0.0.0.0:8090" \
--witness-id='"1.6.57"' \
--private-key='["REDACTED", "REDACTED"]'
Doh! Missing the (edited above so others don't make the same mistake) =
sign.
-
1504145ms th_a main.cpp:123 main ] Writing new config file at /data_trusted_node/config.ini
1504146ms th_a witness.cpp:86 plugin_initialize ] witness plugin: plugin_initialize() begin
1504146ms th_a witness.cpp:96 plugin_initialize ] key_id_to_wif_pair: ["REDACTED","REDACTED"]
1504146ms th_a witness.cpp:114 plugin_initialize ] witness plugin: plugin_initialize() end
But then
1518111ms th_a application.cpp:233 reset_websocket_serv ] Configured websocket rpc to listen on 0.0.0.0:8090
1518111ms th_a witness.cpp:119 plugin_startup ] witness plugin: plugin_startup() begin
1518111ms th_a witness.cpp:136 plugin_startup ] No witnesses configured! Please add witness IDs and private keys to configuration.
1518111ms th_a witness.cpp:137 plugin_startup ] witness plugin: plugin_startup() end
1518112ms th_a main.cpp:176 main ] Started witness node on a chain with 0 blocks.
-
Still haven't gotten my witness online. That last error message is all I have to go on. It's saying that the config.ini needs some entries, but my understanding is that the command line options override config.ini.
-
When launching the node it usually shows the chain id. Does it show 4018d7844c78f6a6c41c6a552b898022310fc5dec06da467ee7905a8dad512c8 ??
-
Yes
3298531ms th_a witness.cpp:119 plugin_startup ] witness plugin: plugin_startup() begin
3298531ms th_a witness.cpp:136 plugin_startup ] No witnesses configured! Please add witness IDs and private keys to configuration.
3298531ms th_a witness.cpp:137 plugin_startup ] witness plugin: plugin_startup() end
3298532ms th_a main.cpp:176 main ] Started witness node on a chain with 0 blocks.
3298532ms th_a main.cpp:177 main ] Chain ID is 4018d7844c78f6a6c41c6a552b898022310fc5dec06da467ee7905a8dad512c8
3299449ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000000be8889601c525cd4ce96f154d76c3022fb","000000c4b97ce506fc23578f24a008dfbbeea19a","000000c7cbc878c1096b62a4cbbf12e7f907d12d","000000c86312e51bb0f5db2abad395a8fddf6625"]
3299517ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000000c86312e51bb0f5db2abad395a8fddf6625"]
3299554ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["0000018640564a6611a1c7a6d3d9e2ff8c422bbe"]
3299881ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["00000389ea651af52044324371f4401518c4a1f9"]
3299885ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["0000038e440609cc5023293d83180acf3d2f2884"]
3300081ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["00000571caadb1e5604f0511385aeb909cc5fe03"]
3300081ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000005d80ba255e70e3afd8a8a5bd7ed1dde02fe","000005ded0c27dbcd854fe270ee93be45b51da4c","000005e1b0b645b08b5daee4dd769f64937c9be2","000005e21ea72765f339fe9ef24aca385ef554f9"]
3300258ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000006af67b0d2dcc445ba1c2af307a0f9c6d594"]
3300266ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["0000064a286c225050af97bb1068f4ca79418248"]
3300309ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000007254e38f6aac83cd7077fd86065eb60c761","0000072b58a727ac876a1242e7730636ff22b5da","0000072ed3772ec329f9a47c6ae90cfcc4b1ddf5","0000072fd0315a610d63853186a808a555300cdc"]
3300432ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["0000072fd0315a610d63853186a808a555300cdc"]
3300535ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000008068ea34be52ec97f842848cfe3c1718c83"]
3300558ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["0000089983ef65facb45ec6ad1fac6897ab5b65a"]
3300681ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000009625806258f7520cf6d8ebe2d14ff30f83e"]
3300999ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["000008a3fad3abd955703c2dd3ec979a1c1fc9bd"]
3301010ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["00000bf207ba3f1bcbe156c4d67ef3724d3a472c"]
3301181ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["00000cb2cc98d1273aa6d0e1356ac2f2fccd5bae"]
3301357ms th_a application.cpp:816 get_blockchain_synop ] synopsis: ["00000d251cb7f569224074cd4c8cc60c4d92ac62"]
-
I think I know what you are doing wrong ..
The container needs to be rebuild when you change the start.sh script ..
go into the "build" directory and run
docker build -t bitshares/bitshares-2-trusted-full-node bitshares-2-trusted-full-node
(this does not need to recompile the binaries, it will just repack the launch script)
That particular container was not meant to be run as a witness .. but I have a more flexible container here already .. Just needs some more polishing and things will be a lot easier
-
This is looking better.... I suppose I just have to wait now?
1677992ms th_a application.cpp:233 reset_websocket_serv ] Configured websocket rpc to listen on 0.0.0.0:8090
1677992ms th_a witness.cpp:119 plugin_startup ] witness plugin: plugin_startup() begin
1677992ms th_a witness.cpp:126 plugin_startup ] Launching block production for 1 witnesses.
1677992ms th_a witness.cpp:137 plugin_startup ] witness plugin: plugin_startup() end
1677993ms th_a main.cpp:176 main ] Started witness node on a chain with 0 blocks.
1677993ms th_a main.cpp:177 main ] Chain ID is 4018d7844c78f6a6c41c6a552b898022310fc5dec06da467ee7905a8dad512c8
1679019ms th_a witness.cpp:182 block_production_loo ] Not producing block because production is disabled until we receive a recent block (see: --enable-stale-production)
-
Yup .. I'd say so :)
Have you been voted in already?
-
No, but I did post a request and asked to be added to slack etc.
-
So then you are ready to rumble and all you need is to synchronize the whole blockchain and wait for enough votes
-
@xeroc I moved my witness and cli-wallet to a new machine with more disk space, but when I attempt to fire up the cli-wallet, I get this:
Logging RPC to file: logs/rpc/rpc.log
1806965ms th_a main.cpp:117 main ] key_to_wif( committee_private_key ): 5KCBDTcyDqzsqehcb52tW5nU6pXife6V2rX9Yf7c3saYSzbDZ5W
1806966ms th_a main.cpp:121 main ] nathan_pub_key: BTS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
1806966ms th_a main.cpp:122 main ] key_to_wif( nathan_private_key ): 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
Starting a new wallet with chain ID 4018d7844c78f6a6c41c6a552b898022310fc5dec06da467ee7905a8dad512c8 (from egenesis)
1806966ms th_a main.cpp:169 main ] wdata.ws_server: ws://172.17.0.1:8090
1806968ms th_a main.cpp:174 main ] wdata.ws_user: wdata.ws_password:
Please use the set_password method to initialize a new wallet before continuing
1806971ms th_a main.cpp:240 main ] Listening for incoming HTTP RPC requests on 0.0.0.0:8092
1806972ms th_a main.cpp:268 main ] Entering Daemon Mode, ^C to exit
-
@xeroc I moved my witness and cli-wallet to a new machine with more disk space, but when I attempt to fire up the cli-wallet, I get this:
Logging RPC to file: logs/rpc/rpc.log
1806965ms th_a main.cpp:117 main ] key_to_wif( committee_private_key ): 5KCBDTcyDqzsqehcb52tW5nU6pXife6V2rX9Yf7c3saYSzbDZ5W
1806966ms th_a main.cpp:121 main ] nathan_pub_key: BTS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
1806966ms th_a main.cpp:122 main ] key_to_wif( nathan_private_key ): 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
Starting a new wallet with chain ID 4018d7844c78f6a6c41c6a552b898022310fc5dec06da467ee7905a8dad512c8 (from egenesis)
1806966ms th_a main.cpp:169 main ] wdata.ws_server: ws://172.17.0.1:8090
1806968ms th_a main.cpp:174 main ] wdata.ws_user: wdata.ws_password:
Please use the set_password method to initialize a new wallet before continuing
1806971ms th_a main.cpp:240 main ] Listening for incoming HTTP RPC requests on 0.0.0.0:8092
1806972ms th_a main.cpp:268 main ] Entering Daemon Mode, ^C to exit
I assume your issue is the "Please use the set_pass ..." warning ..
it indicates that the docker container does not have a wallet.json file ..
so you could either move it out of your old container into your new container .. or recreated your wallet by importing your private key of the witness ..
Anyway .. I do have a updates version of the docker files that uses docker-compoze instead .. I created it with NexusDevelopment and can be downloaded here:
https://github.com/NexusDevelopment/keeper (README included)