redis 一直报错# Fatal: Can‘t initialize Background Jobs.

今天公司环境遇到个坑 redis容器一直反复报错

复制代码
1:C 16 Apr 2026 11:31:51.535 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:31:51.535 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:31:51.535 # Configuration loaded
1:M 16 Apr 2026 11:31:51.535 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:31:51.535 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:31:51.535 # Server initialized
1:M 16 Apr 2026 11:31:51.535 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:22.543 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:22.543 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:22.543 # Configuration loaded
1:M 16 Apr 2026 11:32:22.543 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:22.544 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:22.544 # Server initialized
1:M 16 Apr 2026 11:32:22.544 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:22.798 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:22.798 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:22.798 # Configuration loaded
1:M 16 Apr 2026 11:32:22.799 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:22.799 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:22.799 # Server initialized
1:M 16 Apr 2026 11:32:22.799 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:23.148 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:23.148 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:23.148 # Configuration loaded
1:M 16 Apr 2026 11:32:23.148 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:23.149 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:23.149 # Server initialized
1:M 16 Apr 2026 11:32:23.149 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:23.695 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:23.695 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:23.695 # Configuration loaded
1:M 16 Apr 2026 11:32:23.695 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:23.695 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:23.695 # Server initialized
1:M 16 Apr 2026 11:32:23.695 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:24.641 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:24.641 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:24.641 # Configuration loaded
1:M 16 Apr 2026 11:32:24.641 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:24.641 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:24.641 # Server initialized
1:M 16 Apr 2026 11:32:24.641 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:26.386 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:26.386 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:26.386 # Configuration loaded
1:M 16 Apr 2026 11:32:26.386 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:26.386 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:26.386 # Server initialized
1:M 16 Apr 2026 11:32:26.386 # Fatal: Can't initialize Background Jobs.
1:C 16 Apr 2026 11:32:29.731 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 16 Apr 2026 11:32:29.731 # Redis version=6.2.14, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 16 Apr 2026 11:32:29.731 # Configuration loaded
1:M 16 Apr 2026 11:32:29.731 * monotonic clock: POSIX clock_gettime
1:M 16 Apr 2026 11:32:29.732 * Running mode=standalone, port=6379.
1:M 16 Apr 2026 11:32:29.732 # Server initialized
1:M 16 Apr 2026 11:32:29.732 # Fatal: Can't initialize Background Jobs.

容器启动失败,日志中仅提示"Fatal: Can't initialize Background Jobs",没有其他详细错误信息。经过一番排查和试错,终于定位到问题根源,并总结出几种有效的解决方案,特此记录分享,希望能帮到有类似困扰的朋友。

问题根源

  • 宿主机Docker版本过低,与Redis镜像所需的运行时环境不兼容。

解决方案

升级Docker至较新版本

  • 将Docker升级到最新稳定版,可有效解决兼容性问题。例如,原环境为Docker 20,启动redis:6镜像失败;升级至Docker 28后,同一镜像可正常启动。
复制代码
  root@node3:/home/docker# docker -v
  Docker version 20.10.7, build f0df350
  root@node3:/home/docker#

使用低版本Redis镜像

  • 若无法升级Docker,可尝试使用较低版本的Redis镜像。例如,将镜像从redis:6更换为redis:5.0后,容器可顺利启动。

临时方案:添加特权模式

  • 在低版本Docker(如20)中启动高版本Redis镜像时,可通过添加--privileged=true参数临时解决权限问题。例如:
  • 原命令:docker run -d --name redis redis:6(失败)
  • 修改后:docker run -d --name redis --privileged=true redis:6(成功)
  • docker-compose 可以直接加上 privileged: true (成功)

总结

  • 该问题本质是Docker版本与镜像兼容性不匹配所致。推荐优先升级Docker或选用匹配的低版本镜像,特权模式仅作为临时规避手段。希望这些经验能为大家节省排查时间!
相关推荐
wdfk_prog21 分钟前
Wi-Fi Direct教程 01:在 Ubuntu 搭建双 mac80211_hwsim + wpa_supplicant 2.12
linux·运维·服务器·ubuntu·ros·wifi-direct
fengkai45451 小时前
十一、MySQL 第 1‑3 章
运维·数据库·mysql
Vcaker1 小时前
Linux学习36-k8s集群升级及kube-vip高可用
linux·运维·学习
wdfk_prog1 小时前
Wi-Fi Direct教程 02:从 wpa_cli main() 到 P2P_FIND——用源码注释追踪 CLI 控制命令发送
运维·服务器·网络·网络协议·ubuntu·p2p·wifi-direct
HRTOS2 小时前
HRTOS Shell继续完善:优化printf缓冲区与字符串越界保护,国庆后随新版本更新
运维·单片机·嵌入式硬件·算法·51单片机
智能RPA2 小时前
农业与矿业行业智能体自动化平台对比评测(计量与巡检场景)
运维·人工智能·python·自动化·agent·rpa
沫璃染墨2 小时前
《从零入门Linux系统篇(五十一):线程篇·四——pthread线程库详解:从线程创建到终止与分离》
linux·运维·服务器·开发语言·c++·系统架构·线程
墨家前任巨子2 小时前
定时关机脚本
运维
ESDWAN2 小时前
企业组网后网络频繁掉线,常见故障排查指南
运维·网络·架构
程序员-Benothing3 小时前
Linux系统时间管理:date、timedatectl、NTP、Chrony配置
linux·运维·服务器