I used to simply use the ‘latest’ version tag, but that occasionally caused problems with breaking changes in major updates.

I’m currently using podman-compose and I manually update the release tags periodically, but the number of containers keeps increasing, so I’m not very happy with this solution. I do have a simple script which queries the Docker Hub API for tags, which makes it slightly easier to find out whether there are updates.

I imagine a solution with a nice UI for seeing if updates are available and possibly applying them to the relevant compose files. Does anything like this exist or is there a better solution?

  • Krafting@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    WatchTower can auto uodate your container or notify you when an update is available, I use it with a Matrix account for notifications

    • Dusty@l.dusty-radio.com
      cake
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      Sorry if it’s obvious, but I don’t see a way to use Matrix for notifications on their documentation and my searching is coming up blank. Do you by chance have a tutorial for this?

      • Krafting@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        1 year ago

        Here is how I did it:

        docker run -d \
          --name watchtower \
          -v /var/run/docker.sock:/var/run/docker.sock \
          -e WATCHTOWER_NOTIFICATION_URL=matrix://username:password@domain.org/?rooms=!ROOMID:domain.org \
          -e WATCHTOWER_NOTIFICATION_TEMPLATE="{{range .}}[WatchTower] ({{.Level}}): {{.Message}}{{println}}{{end}}" \
          containrrr/watchtower
        

        Edit: I created a pull request to the WatchTower documentation, here: https://github.com/containrrr/watchtower/pull/1690

  • dan@upvote.au
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    I read the changelogs for the apps, and manually update the containers. Too many apps have breaking changes between releases.

  • Millwiller@lemm.ee
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Kubernetes with ArgoCD declarative config and then Renovate. It automatically makes prs against my config repo for container/chart versions with the change log in the description

  • FancyGUI@lemmy.fancywhale.ca
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I use a combination of flux and a python app that checks out everything running on my cluster and keeps me a list of what needs some attention from upgrades and kube-clarity as well. It’s more kubernetes related though.

  • bookworm@feddit.nl
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Since my “homelab” is just that, a homelab, I’m comfortable with using :latest-tag on all my containers and just running docker-compose pull and docker-compose up -d once per week.

      • deleted@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I use watchtower and hope nothing will break. I never read breaking changes.

        When an issue happens, I just search the internet or change the tag to a known working version until the issue is resolved.

        I can afford to have my server down for a few days. It’s not critical to me.

      • roofuskit@kbin.social
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        It depends on the project. If the project doesn’t make an effort to highlight them I would consider using a different one.

        But any decent OSS will make a good change log for their updates that you can read.

        • psykal@lemmy.fmhy.ml
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 year ago

          I’ve just been updating my containers every week or so and if something breaks I’ll try and fix it. It would definitely be preferable to “fix” in advance, but with enough containers getting updated, checking/reading every change becomes a fair amount of work. Most of the time nothing breaks.

          Downvotes are cool but if this is a bad way of doing things just tell me.

              • roofuskit@kbin.social
                link
                fedilink
                arrow-up
                1
                ·
                1 year ago

                Well, there’s always the “if it ain’t broke don’t fix it” mantra. There’s a few reasons I tend to update. Because there’s a feature I want or need, to fix a big that affects me, or because a software frequently updates with breaking changes and keeping up with reading change logs is the best way to deal with that. The last option is usually because if I keep up with it I don’t have to read and fix multiple months of breaking changes.

  • Protegee9850@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    I just use docker compose files. Bundle my arr stack in a single compose file and can docker compose pull to update them all in one swoop.

    • DigitalPortkey@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      Just so I understand, you’re using your compose file to handle updating images? How does that work? I’m using some hacked together recursive shell function I found to update all my images at once.

      • Protegee9850@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        There’s plenty of tutorials out there for it. A quick DuckDuckGo search turned up this as one of the first results, but the theory is the same if you wanted to bundle ‘arr containers instead of nginx/whatever. https://www.digitalocean.com/community/tutorials/workflow-multiple-containers-docker-compose

        Essentially you create docker compose file for services, within which you have as many containers as you want set up like you would any other compose file. You ‘docker compose pull’ and ‘docker compose up -d’ to update/install just like you would for individual docker container, but it does them all together. It sounds like others in the thread have more automated someone with services dedicated to watching for updates and running those automatically but I just look for a flag in the app saying there’s an update available and pull/ up -d whenever it’s convenient/I realize there’s an update.