Skip to content

Create different package names based on Alpine version #81

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

Closed
jnardone opened this issue Aug 15, 2016 · 3 comments
Closed

Create different package names based on Alpine version #81

jnardone opened this issue Aug 15, 2016 · 3 comments
Labels
Request Request for image modification or feature

Comments

@jnardone
Copy link

Upon clearing our caches out and rebuilding our Docker containers, we realized that ruby:2.3.1-alpine is now based on Alpine 3.4 vs 3.3. This pointed out some changes in package dependencies between those versions.

There should be package names that include the Alpine version, so that we can make an explicit choice of when we move from (say) 3.3 to 3.4. Right now, the definition of the ruby 2.3.1-alpine dockerfile can change without any indication that it's changed OS versions, which seems bad from a repeatable process standpoint.

@yosifkit
Copy link
Member

yosifkit commented Aug 17, 2016

I feel like this would lead to maintaining even more versions of ruby, since users would want the Alpine 3.4 and 3.3 series of Ruby to be updated. Package differences between the versions of Alpine is not the only issue that can arise; there could easily be a problem with the installed RubyGems or Bundler versions which are also not in the docker tag.

If you need to ensure repeatable builds then I suggest pulling by digest (https://docs.docker.com/engine/reference/commandline/images/#/listing-image-digests), so that you can control when any change occurs not just Alpine base changes.

Edit: There is a growing history of ruby image digests in tag-details.

@tianon
Copy link
Member

tianon commented Aug 17, 2016 via email

@rafaelgaspar
Copy link

I like the approach golang had for this issue, for the current version of go they have a 3.4(1.7.5-alpine tag) and a 3.5(1.7.5-alpine3.5 tag), for the new release 1.8 they only have 3.5 alpine tag, the reason for this is, if there is going to be breaking changes it should be on major releases.

Python is looking on that direction too.

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

No branches or pull requests

5 participants