-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add Alpine 3.18 variant #1895
Add Alpine 3.18 variant #1895
Conversation
Note: builds seem to be failing; I'll check later if I can figure out why. If anyone else does see, make sure to let me know! |
There are some issues with Actions right now https://www.githubstatus.com/incidents/pr3498h3qkfy so maybe related to the failures |
Ok, I figured the issue is due to Alpine 3.18 shipping with So the options to fix this are:
Edit: builds seem to be passing now, the workflow failures that are still occurring all seem to be GitHub internal errors which are probably related to the issues with Actions that are going on right now. |
2c88bcb
to
a0b1c13
Compare
I think this is ready for review; can anyone let me know if any further work is required? |
I restarted CI at least |
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.
I think this is fine to do - I don't think we have a set policy for alpine versions or what the tags point to?
For most of the images we maintain, we handle this by setting a two-version cap on the number of distro versions we'll support concurrently (to keep the matrix sprawl / build/maintenance load under control), adding aliases for users to pick a specific version ( |
@tianon thanks, we'll keep to that 2 version cap, but the question was more about #1895 (comment) |
Ah, sorry! We typically do |
a0b1c13
to
51f781e
Compare
I've updated the template to use a temporary |
For consistency I opened #1901 as a follow-up to alter the Debian-based image builds in a similar way. |
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.
LGTM, one minor suggestion, but not blocking
@@ -53,6 +55,8 @@ RUN addgroup -g 1000 node \ | |||
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \ | |||
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \ | |||
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \ | |||
&& gpgconf --kill all \ | |||
&& rm -rf "$GNUPGHOME" \ |
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.
Minor, but maybe this should move with the rest of the cleanups at line 69
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.
Yeah I wasn't sure about the best location and chose to follow the PHP-approach; this includes a manual gpgconf --kill all
which I'm not sure is necessary (i.e. it works fine on my end without it, but maybe it has a more specific purpose) which can only be run when gpg
is still installed. So in that case, I could only move it down to be just above the apk del
call. If you prefer that, let me know and I'll update it!
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.
On gpgconf --kill all
specifically, removing the GNUPGHOME
directory will often fail with race conditions around some of the socket files that end up in there, and we've found that explicitly requesting that GnuPG kill all background daemons first helps with those race conditions (it doesn't completely eliminate them, but it does significantly lessen them).
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.
@nschonni as mentioned, if we keep the gpgconf --kill all
call, this can only be moved as far down as just above line 66. Do you still prefer this, or shall we keep it the current way?
Alternatively, we could just merge this for now, as it is functionally equivalent, move the discussion to #1901 and find a definitive approach there.
Also remove Alpine 3.16
51f781e
to
d951a7f
Compare
Is this PR ready to be merged? I'm looking to use a new package version in Alpine 3.18. |
Hey, is it possible to get this one merged ? Apline 3.17 (and hence - all existing alpine-based node images ) has a security vulnerability in |
that was fixed over a month ago in 3.0.8-r4 and all you have to do is |
Alpine 3.18 has the updates for the musl libc related to the DNS over TCP. |
It would be great 🎉 to see it land 🛬 |
Sorry, I really don't mean to be impatient. Thank you for your hard work with this PR. Is there anything blocking this change? I'm really keen to see it through as it's blocking some stuff I'm working on. |
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.
This all looks good to me. I think we should merge this and resolve the gpg concerns with #1901
Echoing this, is there an indication as to when this update will be merged and made available? |
Created PR on the official-images repo (docker-library/official-images#14779). See https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what if you are wondering when it will be available on the Docker Hub. |
It seems it's happening with multiple official alpine3.18 images for multiple projects. |
By the looks of things, there was some kind of delay with the |
The Node Docker image for Alpine 3.16 is no longer updated; Dependabot seems unable to update the Alpine version, so we haven't had a (security) update for Node. This change manually updates the Alpine version to the latest; then, we should see a Dependabot update for the Node version. Refs #1051, dependabot/dependabot-core#5708, nodejs/docker-node#1895, https://nodejs.org/en/blog/release/v18.16.1
Description
Adds latest Alpine version (3.18) and removes oldest one (3.16).
See also #1813.
Motivation and Context
Provide latest Alpine version (see https://alpinelinux.org/posts/Alpine-3.18.0-released.html).
Testing Details
Example Output(if appropriate)
Types of changes
Checklist