Cardinal-Cryptography / aleph-node-issues

Issue tracker for aleph-node related problems.
2 stars 0 forks source link

Node documentation. #6

Open EmrePiconbello opened 1 year ago

EmrePiconbello commented 1 year ago

Did you read the documentation and guides?

Is there an existing issue?

Description of the problem

Aleph node needed to have documentation on details around docker deployment. If proper documentation exists, everyone can deploy according to their needs and have a better experience in general through updates and everything since if they add some extra flag, they would know why they added it.

At the current state, script changes some files, mostly that's pulling chainspec file and rarely making other adjustments. There are more reliable ways to do this than script. Not to mention one of our servers 10.2 not recognized as an update, so the script updated the directory but kept pulling 10.1 instead of 10.2. Anyone could miss that and assume it's updated. This is problematic, considering the network might have problems and a fast response is required. Typically something like docker run aleph 10.1 --some flags command or directly latest tag here on docker-compose. We use the script, and when issues like this happen, we need to go through the script's code see what exactly sends as a command to fix the problem etc. If documentation exists, everyone can do their deployment and streamline their deployment process without relying on an unreliable scrip that could fail for various reasons.

Information on your setup.

While issue is with script I open this issue to make script a secondary option for docker deployments.

Steps to reproduce

No response

Did you attach relevant logs?

kostekIV commented 1 year ago

Hi! Thanks for bringing this up. The reason the script is there is because we wanted to make running the node seamless for less experienced operators. But it's a valid point that ideally running via docker directly should be documented better.

Just to better understand your expectations. Currently, the way it works, is that the docker container runs the aleph-node binary, and simply passes some flags to aleph-node via environmental variables -- see https://github.com/Cardinal-Cryptography/aleph-node/blob/main/docker/docker_entrypoint.sh. 1) First of all, there is some documentation of aleph-node flags -- simply run aleph-node --help. So you can always take a look. 2) Otherwise, the documentation of the env vars that pass the config to the container is indeed missing. Is this what you would like to see? I.e., a description of the configuration like here in the aleph-node-runner https://github.com/Cardinal-Cryptography/aleph-node-runner/blob/main/env/validator?

EmrePiconbello commented 1 year ago

1)I am aware of 1 but I am just stating it shouldn't be the way documents constructed. I know I can pull the details from script but someone who recently joined might have no idea that script actually involves docker and assume there is no docker deployment. In general going around checking flags from cli or scripts code shouldn't be the way.

2)Yes but with explanations on what they do etc instead of just putting flags there. You could just create like running node example with only few flags required for the node to work. Maybe one more for for validator then put rest of all the flags under some advanced category or something like that. There are hundreds of node clients out there having a structure similar to any of them would be fine.

kostekIV commented 1 year ago

We will add docs and some examples. We'll let you know when it is done.