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

Add 4.0.0 #39

Closed
chorrell opened this issue Sep 4, 2015 · 5 comments
Closed

Add 4.0.0 #39

chorrell opened this issue Sep 4, 2015 · 5 comments

Comments

@chorrell
Copy link
Contributor

chorrell commented Sep 4, 2015

Will need to test Node.js 4.0.0 RC-1 first (https://nodejs.org/download/rc/).

See nodejs/node#2522

@defunctzombie
Copy link

@chorrell Thoughts on making these images based on alpine instead of debian? The final image size savings are immense.

@chorrell
Copy link
Contributor Author

chorrell commented Sep 4, 2015

That would be a pretty significant change and probably pretty disruptive for anyone doing a docker pull node:latest. And it would break any images that build on top of node:latest.

Also, and probably more importantly, I don't think Alpine Linux is something the build team is currently testing against. It might be on their radar, but I don't know.

I think an Alpine Linux variant would be an interesting option though (docker pull node:alpine).

I've also been exploring a "minimal" image as another variant option: #37 ~15MB!

And there's been a discussion about reducing the size of the main version: #4

That's probably worth revisiting.

@defunctzombie
Copy link

Some thoughts from having run my own node alpine based images for a while now in production.

  • I first wanted to also go down the route of "minimal" image with just a nodejs binary but the pain that cased was not worth it over the alpine size. (The pain was not having any reasonable way to install more packages which Alpine provides and you need for python, git, make)
  • Alpine base images benefit from having an easy to use package manager with many packages. This means breakage is minimal for those that might need to install additional components i.e. apt-get style.
  • I have minimal sympathy for anyone based off node:latest IMO this is doomed for failure regardless of which base image is used. If you could avoid publishing that it might even be better in the long run for end users. I know that one is more controversial but I have seen nothing but pain come from having someone depend on latest instead of picking a version.
  • Depending on how you install dependencies even like git and python (I did this with onbuild images usually) you get even more savings in the final image since those are not needed at runtime. This might be more appropriate for a "tips and tricks" section.
  • Debian kinda became the de-factor base for many images when no one was really giving much consideration to image size and packaging techniques over just re-creating a tiny "VM" from an OS they knew.

Totally understand the underlying base breakage this might case and the hesitation that brings. Kinda comes down to how you view use of these images. Are they guides, final production, or development targeted.

@chorrell
Copy link
Contributor Author

chorrell commented Sep 8, 2015

Pull request to add 4.0.0 here: #42

@defunctzombie Probably best to move this to a separate issue, yes?

@chorrell chorrell mentioned this issue Sep 8, 2015
@defunctzombie
Copy link

@chorrell yep, feel free to copy my notes here if you want. This was really just a recommendation/something to think about. If you don't really feel inclined I totally understand and no new issue is needed :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants