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

Base image rebuild questions #16164

Closed
powersj opened this issue Jan 31, 2024 · 6 comments
Closed

Base image rebuild questions #16164

powersj opened this issue Jan 31, 2024 · 6 comments

Comments

@powersj
Copy link
Contributor

powersj commented Jan 31, 2024

Hi,

With the recent glibc CVEs the question came up as to how our Telegraf images get rebuilt with the new base image. It is my understanding that the official images are re-built periodically, but I was curious as to:

  • When these rebuilds are triggered?
  • How these rebuilds are triggered?
  • Can I as a package maintainer force a rebuild?
  • Short of launching the image, is there a way to see the last time my image was rebuilt? docker image inspect telegraf and looking at Created?

Thanks!

@whalelines
Copy link
Contributor

  1. The rebuilds are triggered when a new versions of an image's base image is available
  2. These rebuilds are triggered by our build system leveraging bashbrew
  3. Package maintainers cannot force a rebuild, the automated system rebuilds everything as soon as it possibly can
  4. You can find when an image was last updated on Docker Hub, https://hub.docker.com/_/telegraf/tags

@powersj
Copy link
Contributor Author

powersj commented Feb 1, 2024

Thanks for the clarifications!

You can find when an image was last updated on Docker Hub, https://hub.docker.com/_/telegraf/tags

Is there a way to tell what changed or caused the push? For example, we pushed v1.29.4 yesterday. How can I tell if it was that update or a base image update?

@smgtkn
Copy link

smgtkn commented Feb 1, 2024

Hello, thanks for the answer and the question.
To my understanding, there are 3 reasons why builds for official images occur :

  1. Dockerfile update 2. Base update 3. Periodic rebuilds
    How often are the 'periodic rebuilds' triggered?

@whalelines
Copy link
Contributor

Is there a way to tell what changed or caused the push? For example, we pushed v1.29.4 yesterday. How can I tell if it was that update or a base image update?

If a change to the bashbrew file gets merged, you can check for the new tags it introduces. If you are a bit more adventurous, you can look through builds and their logs, https://doi-janky.infosiftr.net/job/multiarch/job/amd64/job/telegraf/ .

To my understanding, there are 3 reasons why builds for official images occur :

  1. Dockerfile update 2. Base update 3. Periodic rebuilds
    How often are the 'periodic rebuilds' triggered?

There are no periodic rebuilds.

@tianon
Copy link
Member

tianon commented Feb 1, 2024

Debian and Ubuntu are both rebuilt periodically though (with an approximate cadence of at least once per month, give or take), which leads to your "base update" case for many images.

Edit: see also https://github.com/docker-library/faq#why-does-my-security-scanner-show-that-an-image-has-cves (which touches on this a little bit):

We strive to publish updated images at least monthly for Debian. We also rebuild earlier if there is a critical security need, e.g. #2171. Many Official Images are maintained by the community or their respective upstream projects, like Ubuntu, Alpine, and Oracle Linux, and are subject to their own maintenance schedule. These refreshed base images also means that any other image in the Official Images program that is FROM them will also be rebuilt (as described in the project README.md file).

@powersj
Copy link
Contributor Author

powersj commented Feb 2, 2024

Thanks for the clarifications!

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

4 participants