If the oom_killer is invoked, even within a container, this will force a reboot. Wouldn't it be much better to set limits via systemd units or docker cgroups? If a systemd process exceeds its memory allocation, only one service will be killed and restarted.
If a service is critical and should panic if it fails, wouldn't it be better to use OnFailure=reboot.sh just for those services?