Hello! I was wondering if running periodically a script to automatically pull new images for all my containers is a good or a bad idea. I’d run it everyday at 5.00AM to avoid interruptions. Any tips?

EDIT: Thanks to everyone for the help! I’ll install Watchtower to manage the updates

27 points

Some apps have breaking changes. If you can restore a complete backup when that occurs, you can recover. Immich is famous for its breaking changes

permalink
report
reply
9 points

But from the moment that the script updates and breaks something and the moment he realizes it may be too late for some applications.

For example I host Traccar to track car/vans and in this case some tracks would be lost. Or maybe SyncThing, he may realize days/weeks later that a sync is not working and if he was synching his smartphone pictures with his server and the smartphone is lost/broke/stolen, he may lose days/weeks or even months of pictures.

I wouldn’t trust a script. Use Watchtower or What’s up Docker

@tubbadu@lemmy.kde.social

permalink
report
parent
reply
1 point
*

That’s why you you bind mount all the important data and back it up with a proper backup solution like borg. And why you also have a monitoring and notification system that alerts you if a service goes down. I will get a telegram message within 15 minutes of a service going down.

permalink
report
parent
reply
1 point
*

I do bind mount data folders of the containers, I do backups, I have a notification system that alerts me if a container is not up, but a container can be up but have problems and, most importantly, I (and I guess a lot of other people) don’t always have time to solve problems. When I a few spare minutes a do a snapshot, I update the containers and if something goes wrong if I have time I troubleshoot it, otherwise I just roll back the snapshot and I’ll have a look at the problem when I’ll have time.

permalink
report
parent
reply
1 point

I’ll surely check them out, thank you very much!

permalink
report
parent
reply
4 points

Yes because immich is still not considered stable. Keep that in mind.

permalink
report
parent
reply
7 points

Depends on how you like to roll. If you enjoy waking up to a service not working then go for it.

But it very much depends on what containers you’re using and what tags you’re pulling.

permalink
report
reply
16 points

Why not just let Watchtower do it for you?

permalink
report
reply
14 points

Because I was today years old when I found out this beautiful piece of software exist :D

thank you very much!

permalink
report
parent
reply
1 point

I use Watchtower and haven’t had any major issues in the two(?) years I’ve been using it. Make sure you use persistent volumes for your containers and make sure you back up those volumes. If anything breaks, you can roll back to before the update.

If you don’t use persistent volumes, you’ll lose data when Watchtower takes down the image and replaces it with the newer one (which doesn’t copy over ephemeral volumes).

I also recommend for database containers to use an image tag that won’t update with breaking changes. Don’t use postgres:latest, use postgres:15.2 or something like that (whatever the image you’re using the database for recommends).

permalink
report
parent
reply
3 points

Pretty solid advice.

One could argue though that a backup script could pull the particular container image right after doing the backup to have maximum coverage.

If someone is already that adept at scripting to rely on a script to do automatic backups, they can very well pull the new images and clean old ones.

I‘m one of those who have a backup script and still use watchtower.

permalink
report
parent
reply
7 points

I get a summary once a week of all the updates. I then check the release notes and if nothing needs any changes just run the ansible playbook that updates to those releases. I don’t want to get up and first thing in the morning read alert emails because an update failed over night, so i sit down for 10 minutes once a week.

permalink
report
reply
8 points

I used to have my docker updates done automatically. However, as the services I used to run just for myself have started to be used by other people (family, friends), I am less tolerant of having things break. So, instead of something like watchtower, I run diun these days. I have it set up to ping me in a discord channel when a docker update is available. Then, I can actually perform the update when I have time and attention to troubleshoot any issues that may come up.

permalink
report
reply
5 points

Agree, if you are running containers on a casual or “just for fun” basis then automatic updates are fine. But the more you or others depend on the service running, the more it makes sense to perform an update manually, when you have time to troubleshoot any problems that may arise. Or, even update on a test setup first to identify issues and then update on your production setup.

permalink
report
parent
reply

Selfhosted

!selfhosted@lemmy.world

Create post

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.

Rules:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

Community stats

  • 4.7K

    Monthly active users

  • 3.1K

    Posts

  • 69K

    Comments