this post was submitted on 24 Jul 2026
22 points (95.8% liked)

Selfhosted

60967 readers
707 users here now

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:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

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

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

I was having some issues with Invidious the other day, which I resolved. However, I came across this tidbit of info that I'd never seen before when I first deployed it:

Post-install configuration:

Highly recommended

Because of various issues, Invidious must be restarted often, at least once a day, ideally every hour.

https://docs.invidious.io/installation/#windows

Anyone else observing this weird restart schedule?

you are viewing a single comment's thread
view the rest of the comments
[–] deviceshelf@lemmy.world 2 points 1 day ago (1 children)

That line predates invidious-companion. When the player and signature handling still lived in the main process, a periodic kick was the honest workaround, and the docs never really caught up after companion split it out.

What I'd push back on is the blind hourly restart, because it hides exactly the failure you just had. A companion image sitting a version behind shows up as things half-working, and a scheduled restart makes that go away for an hour at a time, so you never trace it. If you're going to script something, script a check instead: hit an endpoint that actually plays a video, restart only when that fails, and log it when it does. Then a restart tells you something happened.

Small thing that would have caught your case: docker compose pull with no service name pulls all three, and docker compose images prints the digests you're actually running.

[–] irmadlad@lemmy.world 1 points 1 day ago (1 children)

That makes sense. I'll see what I can come up with. Thanks for the guidance.

[–] deviceshelf@lemmy.world 2 points 16 hours ago (1 children)

Here's the shape, if it saves you the fiddling. Put it in the compose file rather than a cron:

healthcheck:
  test: ["CMD-SHELL", "wget -qO- http://localhost:3000/api/v1/trending >/dev/null || exit 1"]
  interval: 5m
  timeout: 10s
  retries: 3
restart: unless-stopped

Port and path to match your setup, and use wget rather than curl unless you know the image ships curl, since a healthcheck that fails because the binary is missing looks exactly like a service that is down.

One catch: Docker marks a container unhealthy but won't restart it for you. Either pair it with something like autoheal, which watches for that state, or keep your cron and have it check first and restart only on failure.

Either way you get the thing the blind hourly restart can't give you: a log of how often it actually fired. Never, and you didn't need the restarts. Constantly, and there's a real bug worth chasing rather than a schedule papering over it.

[–] irmadlad@lemmy.world 1 points 16 hours ago

Aww shit man. Thanks for that. I'm going to do this today! Thank you. You are very generous with your time.