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

RFC: Change Version Scheme for baseimage-docker #543

Closed
Theaxiom opened this issue Oct 21, 2019 · 14 comments
Closed

RFC: Change Version Scheme for baseimage-docker #543

Theaxiom opened this issue Oct 21, 2019 · 14 comments

Comments

@Theaxiom
Copy link
Collaborator

I am proposing we change the version scheme for the tagging of baseimage-docker container images to match the version of LTS Ubuntu which it is built from and attach our semantic version.

Here is one idea:

  • phusion/baseimage-docker:18.04-1.0.0

Any additional feedback is welcomed! I would like to solidify this before we cut the next release.

@Theaxiom
Copy link
Collaborator Author

I feel that we are well past "Version 1.0" of baseimage-docker and should graduate to a more mature versioning scheme, this is why I have proposed the above.

@kingdonb
Copy link
Collaborator

I think that semver is awesome, and there are some tools which do automation on semver that insist your tags must be rigidly semver without deviating.

18.04-1.0.0 does not parse in a semver context. 18.04 is also not semver.

I am not sure that it matters here, as the context I'm thinking of in particular is fluxcd, and you are not expected to run an unmodified baseimage-docker in any real environment. So it might be more important for our tags to communicate something clearly, which 18.04-1.0.0 does nicely.

@Theaxiom
Copy link
Collaborator Author

Theaxiom commented Oct 23, 2019 via email

@rdeavila
Copy link

rdeavila commented Nov 8, 2019

Maybe this adds more complexity, but an alternative is removing the 18.04 part from the tag, and add to the image name, like phusion/baseimage-docker-18.04:1.0.0 or phusion/baseimage-docker:20.04-1.0.0.

@Theaxiom
Copy link
Collaborator Author

@rdeavila if we go based on standard Docker community established conventions (looking at common container images available on Docker Hub) we can see that the convention is to keep it in the tag.

@brandonkal
Copy link

I would suggest:

  • phusion/baseimage-docker:bionic-1.0.0
  • phusion/baseimage-docker:cosmic-1.0.0

Easier to read and more in line with the official ubuntu image tags.

@Theaxiom
Copy link
Collaborator Author

@brandonkal I like your recommendation. If anyone else is in favor, give it a thumbs up.

@Theaxiom
Copy link
Collaborator Author

Implementing new version strategy based on @brandonkal suggestion.

@SuperSandro2000
Copy link

The official ubuntu image tags are:

18.04, bionic-20200403, bionic
19.10, eoan-20200410, eoan
20.04, focal-20200423, focal, latest, rolling
20.10, groovy-20200505, groovy, devel
14.04, trusty-20191217, trusty
16.04, xenial-20200326, xenial

So to be inline with official tags would mean to at least have the number and the name. Not one or the other.

@Theaxiom
Copy link
Collaborator Author

@SuperSandro2000 I don't think it is necessary to go beyond bionic-1.0.0 as if you look at the Docker Hub for Ubuntu you will see that we can build from the bionic tag and we are not doing any regular/nightly builds.

I see your point regarding security updates though, it would be nice to know which image it was built from, but you can determine that from the date the image was built. It would in some sense be redundant, it would also make it so we cannot automate the build process as easily. and have super-long image tags.

Anyone else have input regarding this?

@Theaxiom Theaxiom reopened this May 29, 2020
@SuperSandro2000
Copy link

I did not mean that this image needs nightly builds or support every version of Ubuntu. I wanted to say that I would prefer two tags: bionic-1.0.0 and 18.04-1.0.0 for the same image.

@Theaxiom
Copy link
Collaborator Author

@SuperSandro2000 that's certainly reasonable. I did not mean to imply that you had indicated nightly builds, I was stating that if we were to be doing nightly builds, we would include the 20200403 portion of the version in our tags. I will release two tags based on your input:

  • bionic-1.0.0
  • 18.04-1.0.0

@Theaxiom
Copy link
Collaborator Author

Theaxiom commented Jun 4, 2020

@SuperSandro2000 Just wanted to let you know I do appreciate your feedback and I agree entirely with you, I'v been super stressed at work lately and I should not allow it to affect my pragmatism. I hope to have the CI/CD pipeline working properly soon and have already made some recent changes to that effect. We use GitLab CI at work and I just haven't had the time to really take a deep dive into Travis CI, ironically enough it is named after me.

I just pushed up the new version.

@Theaxiom
Copy link
Collaborator Author

Theaxiom commented Jun 4, 2020

@SuperSandro2000 CI pipeline is fixed, builds are fully automated now. 👍

Thank you for the inspiration and motivation! <3

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

No branches or pull requests

5 participants