Restart using the 'latest' tag for new container image releases
New container image releases stopped being tagged as latest more than 2 years ago. Now they are only tagged with their version number. Why was that change made? The lack of a latest tag forces me to pull a fixed version, which breaks my project's setup of automated updates using Watchtower. I know there are valid arguments against automated updates, but I think that choice should be left to the users, not forced by the project by not providing that tag. This is not a critical application, and I'm fine with the risk of it breaking after an update.
Is there another reason for the lack of a latest tag?
Just about every project publishes container images using a tag which reflects the version. Use of the latest tag, which is mutable, creates unpredictability as there's no way to know what code gets pulled down. You need to adapt your workflows to accommodate the standard practice of versioned releases and their accompanying images.
The docker default behavior when no tag is specified is to pull the "latest" tag. It's hard to get more "standard practice" than the tool's default. The fact that docker pull nvcr.io/nvidia/k8s/dcgm-exporter pulls a years old image could even be considered a security risk.
Either way though, the standard practice is to publish both the 'latest' and version tags, and let users pick (yes, with strong encouragement to use versioned releases). It's not standard practice to force a specific workflow by discontinuing a tag. This is the only image out of 20+ in my stack that does this. The fact that there are various tools built upon the 'latest' tag demonstrates that it has its place in legitimate workflows, and it makes sense to let people make informed decisions.