-
Notifications
You must be signed in to change notification settings - Fork 592
aarch64 Support #28
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
aarch64 Support #28
Conversation
|
@alexellis would you take a look as my ARM expert? |
Dockerfile.aarch64
Outdated
| @@ -0,0 +1,29 @@ | |||
| FROM frozeneye/aarch64-nodejs:latest | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Out of interest - do you know much about the frozeneye user on the Hub?
I saw this in their build log:
---> Running in 7639fbe42eba
Removing intermediate container 7639fbe42eba
rpc error: code = 2 desc = "oci runtime error: exec format error"
https://hub.docker.com/r/frozeneye/aarch64-nodejs/builds/b4q72yulmlpht9ggd3ytmlv/
I would say this looks good to me - but would like to know more about the frozeneye account / images.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No idea. @adomenech73 is that your account?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nope!! but dockerfile is here Github and I think (because the keys) it's based on official node dockerfiles Github, I didn't crosscheck every reference but seems fair enough for me.
The only difference I see, is that uses aarch64/debian repository Dockerhub that is the only source I found for aarch64 on dockerhub. I didn't audit everything on detail but seemed coherent to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds risky if it's from an unknown source - that person could just as easily change the Dockerfile to anything else. Given that this image has to be run with access to the docker socket, that means the author of that image effectively has root access to your hosts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's true, didn't realize. If it can help I can change the pull request to not make reference to this image and instead construct it directly from aarch64/debian
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That may be a better option to derive from aarch64 (providing that account is also known). The concern about mounting the socket is also valid but not specific to this pull request.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the aarch64 repo are maintained by @tianon, and are basically the "official" images (in progress) https://hub.docker.com/r/aarch64/debian/, those images can be trusted
|
@alexellis @thaJeztah What about something like this? |
|
Liking that @adomenech73. @thaJeztah as a follow-up maybe we can ask Tianon to create an official node base image under aarch64? |
|
@alexellis perhaps he can help, but the official NodeJs images is not maintained by him, but by NodeJs upstream; https://github.com/nodejs/docker-node |
|
It's still pushing, but https://hub.docker.com/r/aarch64/node/ is built
now. 👍
(Will get an image description sometime later when that Jenkins job runs
again.)
|
|
Wow, thanks @tianon ! |
|
@tianon Image simplifies a lot the readability. I used 4.6.0-slim tags because seems to be the most similar one to the main Dockerfile |
I just slightly modified the arm Dockerfile to make it run on my Pine64 card cluster.
Just changed to the frozeneye nodejs repository, so in essence it works exactly as arm arch.
To run it on dedicated hardware I build the container as:
And I run it as:
Note the "--privileged" parameter, needed to overpass permissions problems
Hope it's helpful for anyone besides me