Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

node: Publish neo-cli to docker hub #3016

Open
lock9 opened this issue Feb 26, 2019 · 11 comments
Open

node: Publish neo-cli to docker hub #3016

lock9 opened this issue Feb 26, 2019 · 11 comments
Assignees
Labels

Comments

@lock9
Copy link
Contributor

lock9 commented Feb 26, 2019

Hello,
I was wondering if we could publish neo-cli to docker hub. It's quite easy to start a node with neo-python using Docker, I was wondering if we could do the same using neo-cli.
We have a single node image in neo-local, but it was made to work as a consensus node (setup private network). I'm looking for a way to easily start a neo-cli (with or without RPC) pointing to a specific network.
A build system would also help a lot, so we can use the latest master and development versions.

If you guys need help with this task, @nunojusto is an expert in this subject and is also responsible for the latest versions of neo-local.

@nunojusto
Copy link

nunojusto commented Feb 26, 2019

Sure, I can make this.
What you want is a relay node, not a consensus node, right?
I can make the Dockerfile that you can use to build it. Or we can manage to have a docker hub for NEO also, but for that i need official help.

@erikzhang erikzhang added the discussion Initial issue state - proposed but not yet accepted label Feb 27, 2019
@lock9
Copy link
Contributor Author

lock9 commented Feb 27, 2019

I think that if you can provide us with a working Dockerfile, one that copies that configuration from the current project and compiles it, it would be great.
Not sure how to handle the "--rpc" flag, but I'm sure this is easy for you :)
Do you think we need to use an intermediary image to build and another to host it? Maybe it makes more sense from a security perspective.

So basically, we need:

  • Compile it from source
  • Copy configuration files (config / protocol.json) - probably done when you copy the source files
  • Start it with or without the RPC flag

@nunojusto
Copy link

Yes, I can provide a dockerfile that does that. Including getting the newest code from github, compile it and produce a docker image that we can use to start the node.
That image, because it's not consensus, can be then put inside a swarm or kubernetes cluster to be an highly available service.

@lock9
Copy link
Contributor Author

lock9 commented Feb 27, 2019

Like you mentioned in slack, there is already a Dockerfile:
https://github.com/neo-project/neo-cli/tree/master/ci

It does 50% of the work, however:

  • it always starts with RPC
  • it compiles and runs in the same image

@nunojusto
Copy link

I think we can start with the Dockerfile we have in the repo and correct/extend it.
Let me work on it...

@lock9
Copy link
Contributor Author

lock9 commented Feb 27, 2019

@nunojusto if possible, please check if it is importing plugins, this is quite important too.
https://github.com/neo-project/neo-plugins

@nunojusto
Copy link

@nunojusto if possible, please check if it is importing plugins, this is quite important too.
https://github.com/neo-project/neo-plugins

No plugins are used in the actual Dockerfile

@lock9
Copy link
Contributor Author

lock9 commented Feb 27, 2019

I'm not sure (I'll leave that to the specialists), but I think that "SimplePolicy" is a mandatory plugin, "RpcSecurity" and "ApplicationLogs" are highly recommended.

@nunojusto
Copy link

You are correct, SimplePolicy is mandatory. I've incorporated it on neo-local long ago.

@lock9 lock9 added enhancement Type - Changes that may affect performance, usability or add new features to existing modules. and removed discussion Initial issue state - proposed but not yet accepted labels Jul 16, 2019
@lock9
Copy link
Contributor Author

lock9 commented Jul 22, 2019

@neo-project/ngd any chances you guys can help move this forward? I think this will help a lot of people, just look how many "ubuntu" or other "compilation issues" we have in our closed issues. This would "solve" them all.
Thanks.

@longfeiWan9
Copy link
Member

@neo-project/ngd any chances you guys can help move this forward?

I think this is a great idea. We definitely can help to provide it.

@lock9 lock9 self-assigned this Sep 29, 2019
@shargon shargon changed the title Publish neo-cli to docker hub node: Publish neo-cli to docker hub Dec 5, 2023
@shargon shargon added node and removed enhancement Type - Changes that may affect performance, usability or add new features to existing modules. labels Dec 5, 2023
@shargon shargon transferred this issue from neo-project/neo-node Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants