-
Notifications
You must be signed in to change notification settings - Fork 115
feat: add scheduled job to rebuild latest release Docker image #208
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: main
Are you sure you want to change the base?
feat: add scheduled job to rebuild latest release Docker image #208
Conversation
6b76dc9
to
6bb57a8
Compare
Thanks a lot for your efforts. I think release tags should stay immutable. If we change same tag every month then it might lead to unexpected differences. Imagine somebody use release tag in k8s. What if newly launched node will take more recent image, while 2nd replica on old node stays with older version. They both has same tag, but not equal content. Any inconsistency in image content might lead to hard to debug issues. Another point - latest packages does not mean more security. Not long ago world had xz utils backdoor issue. More conservative approach helped to avoid this threat. Lastly, our docker image is based on specific nginx unit image, which was not updated for more than 1 year. It has 5 critical, 24 high severity security issues, and very likely it won't get any updates at all. Having all this in mind, I would avoid having suggested approach. Maybe it's better to use tag |
@ramunasd, I just checked - it looks like a best practice for docker images to be rebuild time to time. I'm sure if you would push these images to docker hub - it will show you they have some vulnerabilities. And this what I wanted to fix. TBH I don't like both options:
This will still not fix the issue with vulnerable dependencies inside these containers.
This would require additional effort for updating incrementally the images. What do you think? |
nginx 1.27 and 1.28 are aliases to latest bugfix version from corresponding minor series, so that's different |
@ramunasd,
I’m uncertain about our current compatibility policy. Perhaps we could maintain just the What are your thoughts? |
@ramunasd please review |
Hi, I didn’t review your change, but I was interested by the issue itself. On my ends, I’m just sharing standard market practice when it comes to security fixes. Even if your software didn’t change but your are releasing update for dependencies security fixes you should retag. retagging ensure immutability, this is good for caching, audit etc… it’s the recommended way to release from devsecop and SRE.. |
@ludofleury, the problem came from not having releases for more than 1 year, which means all dependencies are 1 year old. As I have example in #208 (comment), major and minor nginx version images are being rebuilt from time to time, same in https://hub.docker.com/_/composer. So this pull request does the same. |
This pull request adds re-building last release image, this is needed for security reasons (dependencies updates)