linuxserver / docker-tautulli

http://linuxserver.io
GNU General Public License v3.0
213 stars 40 forks source link

[BUG] Remove YYYY.MM.DD old version tags #123

Closed webash closed 11 months ago

webash commented 11 months ago

Is there an existing issue for this?

Current Behavior

I'm using Mend Renovate to automatically add PRs into my repo when new versions of images I use are released. This works well for all of your images except this one, which appears to have changed version number scheme at some point from YYYY.MM.DD to Major.Minor.Patch. Because the last one of these 2021.12.16 is higher than the current version in my config 2.13.1, Mend Renovate is detecting the older package as a higher version.

Expected Behavior

Remove 2+ year old packages and old version number scheme to prevent confusion for automation.

Steps To Reproduce

  1. docker-compose.yml with lscr.io/linuxserver/tautulli:2.13.1 as a targeted image
  2. Instantiate a Git(hub) repo
  3. Install/use Mend Renovate in the repo
  4. Mend Renovate detects 2.13.1 as upgradeable to 2021.12.16

Environment

- OS: N/A
- How docker service was installed: N/A

CPU architecture

arm64

Docker creation

services:
  tautulli:
    image: lscr.io/linuxserver/tautulli:2.13.1

Container logs

N/A
github-actions[bot] commented 11 months ago

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

Roxedus commented 11 months ago

We are not able to delete tags from all registries, and thus will not create discrepancies across them.

aptalca commented 11 months ago

https://www.linuxserver.io/blog/docker-tags-so-many-tags-so-little-time#semver-info

webash commented 11 months ago

https://www.linuxserver.io/blog/docker-tags-so-many-tags-so-little-time#semver-info

Thanks. This helps make further sense! I hadn't discovered this through my searching. Maybe something to link from on the container pages when referring to the tags available?

Maintaining dozens of container stacks without automated version notifications from before I implemented Renovate was becoming problematic for me as I would forget to check the "set and forget" type images and they'd drift woefully out of date.

If not advocating Renovate, where's a good place to discuss or get information about how to keep on top of updates without just targeting latest?

aptalca commented 11 months ago

I'm not recommending against Renovate per se, but I'm recommending against relying on upstream semver for our images.

For tags, there are various options, but if you're looking for the most convenient, you can stay on latest for most of our images (except for Nextcloud and maybe a couple of others) as long as you're doing attended upgrades with proper backups. Our images make it very easy to make backups by consolidating all user info into a single config folder.

The biggest downside of being on latest is not easily knowing which image version you're on. So when an upgrade fails and you want to go back to the previous version you were on, you may have to go through the tag list on one of the registry hubs. But you can easily check the image version of a running container: https://github.com/linuxserver/docker-tautulli#support-info

A versioned backup method like described here would easily get you back to the exact same running state as before in case something breaks: https://www.linuxserver.io/blog/2019-10-01-updating-and-backing-up-docker-containers-with-version-control