I got an home server that is running docker for all my self hosted apps. But sometimes I accidentally trigger Earlyoom by remotely starting expensive docker builds, which kill docker.

I don’t have access to my server outside of my home network, so I can’t manually restart docker in those situations.

What would be the best way to restart it automatically? I don’t mind doing a full system restart if needed

  • @[email protected]
    link
    fedilink
    English
    -74 months ago

    I don’t know the best way but I would use cron and start docker every minute (if it’s not running).

    • @[email protected]
      link
      fedilink
      English
      84 months ago

      I don’t know the best way

      Apparently…

      Don’t do this. Either don’t go OOM to begin with (somebody else told you how to limit container memory usage} and/or configure systemd to restart docker if it quits. I’m surprised systemd isn’t already.

      • @RustyNovaOP
        link
        English
        14 months ago

        Seems like the best solution. I’ll look into it

        • @[email protected]
          link
          fedilink
          English
          04 months ago

          Seems like the best solution.

          Over using a system tool designed to monitor and restart services that stop?

          • @RustyNovaOP
            link
            English
            14 months ago

            ? I’m agreeing with you?

        • @[email protected]
          link
          fedilink
          English
          1
          edit-2
          4 months ago

          It’s fairly obvious I feel.

          You’re saying rather than use a system tool that does the exact thing that you want you should bodge together a cron job that accomplishes your goal but doesn’t actually do what you want.

          Like say you want to stop the docker service for some reason? systemctl stop docker will do that. Then your cron job will restart it. That’s not the desired outcome. You want the service running IF the service SHOULD be running. Which is a different thing than “always running”. And its’ exactly what you get for free with systemd without any silly custom BS.

    • @RustyNovaOP
      link
      English
      -54 months ago

      I’ll try that. I know that systemctl has a start-or-reload command, but is there any “start-or-ignore” commands? Or start flags?