Вероятно, пересборка сбросила размещение cgroup контейнера, что объясняет его стабильность.
Учитывая исходные ошибки «can’t alloc thread» и тот факт, что все остальные параметры (ulimits, TasksMax, Docker PIDs) не ограничены, основным подозреваемым остаётся давление на PID cgroup.
Можете ли вы проверить при обычной нагрузке:
cat /sys/fs/cgroup/pids.current
cat /sys/fs/cgroup/pids.max
Если pids.current приближается к ~2000+ при максимуме ~2285, это подтвердит, что контейнер достигал потолка PID cgroup во время всплесков переподключения планировщика / Redis.
Это также объясняет, почему проблема проявилась только после обновления (более высокая смена потоков) и почему пересборка временно устранила её.