启动Cadvisor容器遇重启及‘mountpoint for cpu not found’错误求助
解决cadvisor启动报错"mountpoint for cpu not found"的方案
以下是针对该报错的具体修复步骤,按优先级尝试:
1. 修复/sys卷挂载参数
在docker-compose配置中,给/sys挂载添加rshared选项,确保容器能正确访问宿主机sysfs的子挂载点:
cadvisor: image: google/cadvisor:v0.33.0 volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro,rshared # 新增rshared参数 - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro depends_on: - redis ...
2. 验证宿主机sysfs挂载状态
在宿主机执行命令,确认sysfs已正确挂载到/sys:
mount | grep sysfs
如果无输出,手动执行挂载:
mount -t sysfs sysfs /sys
3. 升级cadvisor版本
v0.33.0是较旧版本,可能与当前宿主机内核不兼容,替换为新的稳定版本(如v0.47.0):
cadvisor: image: gcr.io/cadvisor/cadvisor:v0.47.0 volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro,rshared - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro depends_on: - redis ...
4. 临时启用特权模式(仅测试用)
若上述方法无效,可临时添加特权模式(不推荐用于生产环境):
cadvisor: image: google/cadvisor:v0.33.0 privileged: true volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro depends_on: - redis ...
5. 检查宿主机内核版本
cadvisor要求宿主机内核版本≥3.10,执行命令查看:
uname -r
版本过低则需升级内核。
内容的提问来源于stack exchange,提问作者Mohammad Reza Mousavi
相关产品推荐
相关产品推荐

