Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >docker 启动失败排查(loopback attach failed)

docker 启动失败排查(loopback attach failed)

作者头像
用户10325771
发布于 2023-03-01 09:15:14
发布于 2023-03-01 09:15:14
1.5K00
代码可运行
举报
运行总次数:0
代码可运行

某个清晨来到公司,突然发现MySQL,redis一直Connection TimedOut,打开Navicat连接MySQL连接不上,无法打开Portainer(docker可视化操作页面);远程连接服务器发现docker挂掉了,使用systemctl start docker无法启动,使用dockerd启动查看报错信息。

1、error initializing graphdriver: loopback attach failed(第一个错误信息)

错误信息:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ERRO[2022-04-20T10:46:43.988072049+08:00] Error opening loopback device: open /dev/loop0: no such device or address 
ERRO[2022-04-20T10:46:43.988117534+08:00] [graphdriver] prior storage driver devicemapper failed: loopback attach failed 
  • 通过百度查找到相关解决方案都是在 /dev 路劲下新建 loop$num等文件
  • 以上图修改存储驱动等方式解决无法解决上述错误;
  • 手动添加使用以下命令控制回路设备的回路模块后:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
insmod /lib/modules/3.10.0-327.36.2.el7.x86_64/kernel/drivers/block/loop.ko
复制代码

/lib/modules/路径后根据你本机的内核版本进入对应内核版本文件夹即可。

2、 Error running deviceCreate (CreatePool) dm_task_run failed

错误信息:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[graphdriver] prior storage driver "devicemapper" failed: devicemapper: Error running deviceCreate (CreatePool) dm_task_run failed
复制代码
  • 可能是因为没有足够的空间磁盘(并不是):
  • 使用 dockerd -D –storage-driver=overlay指定存储驱动的方式来进行修复,没有用(试过了官网给出的所有选项)
3、解决方式:

官网[:](dockerd |Docker 文档)

再次翻看文档时发现:

  1. 查看内核版本:uname -sr发现版本3.*
  2. 升级内核:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#导入该源的秘钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
#启用该源仓库
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
#查看有哪些内核版本可供安装
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
#版本选择
    #安装的长期稳定版本,稳定可靠
    yum --enablerepo=elrepo-kernel install kernel-lt -y 
    #安装的是主线版本,该版本比较激进,慎重选择
    yum --enablerepo=elrepo-kernel install kernel-ml -y
复制代码
  1. 设置 GRUB 默认的内核版本:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
GRUB 初始化的第一个内核将作为默认内核,记得查看你想使用的内核排序
# vim /etc/default/grub 设置 GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
#这里的saved改为0即可,重启后,默认就是你上次所选的版本了。
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

命令行执行:grub2-mkconfig -o /boot/grub2/grub.cfg
复制代码
  1. 重启机器,再次使用 dockerd 启动docker测试是否可以正常启动;完美运行,停止使用systemctl start docker启动即可
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Centos 7 升级系统内核
我们使用 Linux 来表示整个操作系统,但严格地来说,Linux 只是个内核。各种发行版(RedHat、ubuntu、CentOS等)是一个完整功能的系统,它建立在内核之上,具有各种各样的应用程序工具和库。
玖柒的小窝
2021/12/09
1.6K0
Docker in Docker测试
想在容器中测试一下docker的简易离线配置步骤,结果遇见几个莫名其妙的错误,记录下排错过程供后续参考。
雪人
2022/10/13
6400
linux-kernel(内核)升级,降级与使用
大家好,又见面了,我是你们的朋友全栈君。 1,查看当前linux内核版本命令 [root@ ~]uname -a Linux critical-drum-1.localdomain 4.12.10-1.el7.elrepo.x86_64 #1 SMP Wed Aug 30 13:00:07 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux [root@ ~]uname -r 4.12.10-1.el7.elrepo.x86_64 [root@ ~]cat /etc/re
全栈程序员站长
2022/08/09
2.4K0
centos7 内核如何升级
需求:由于客户容器化的需要,需要将当前的操作系统升级为5.10.7的版本。 内核升级操作步骤如下: 步骤一:载入公钥、安装elrepo rpm -import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm 步骤二、载入elrepo-kernel元数据 yum --disablerepo=\* --enablerepo
Linux运维技术之路
2022/06/07
2.6K0
centos升级内核版本以支持overlay2
搬瓦工新入的KVM架构的机器,默认内核版本是4.10.4,如果是本地用ISO安装的系统,默认内核版本可能更低,比如3.10.0,如果我们想要获取到最新的Linux特性,那么就必须升级内核版本到最新,我们可以用很简单的几个命令就可做到。
老高的技术博客
2022/12/28
1.1K0
CentOS7.4 系统内核升级
由于Docker 在CentOS系统中需要安装在 CentOS 7 64 位的平台,并且内核版本不低于 3.10;CentOS 7.× 满足要求的最低内核版本要求,但由于 CentOS 7默认内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。所以建议大家升级到最新的稳定内核版本。
jwangkun
2021/12/23
1.1K0
CentOS7.4 系统内核升级
centos7内核升级最新BBR内核
CENTOS7作为常用的服务器系统,其正式版的内核都是相当保守的。以下介绍以下升级最新版本的内核方法,目的是为了实现内核的BBR功能,改善CENTOS7的网络功能
Zach
2019/12/30
3.8K0
CentOS7升级系统内核
为了让新安装的内核成为默认启动项,需要修改GRUB配置:打开并编辑/etc/default/grub,设置GRUB_DEFAULT =0。
孟斯特
2023/11/19
2.9K0
CentOS7修改内核版本
因为研究测试fabric需要安装docker,而docker又对linux内核版本有要求,因此对测试的机器内核升级,以下为整理的内核升级方法步骤,忘指正。
用户4988376
2021/07/21
2.1K0
Linux系统手动更换内核
基本不会介绍BBR的原理,需要详细了解,可以访问research,我技术并不够优秀,很难解释清楚,还请见谅!
Bess Croft
2020/04/03
6K0
【玩转腾讯云】Linux系统手动更换内核
基本不会介绍BBR的原理,需要详细了解,可以访问research,我技术并不够优秀,很难解释清楚,还请见谅!
Bess Croft
2020/04/02
15.3K3
【玩转腾讯云】Linux系统手动更换内核
CentOS7.x系统配置记录
建议使用阿里云的源其他发行版等同:http://mirrors.aliyun.com/help/centos
全栈工程师修炼指南
2020/10/26
2.3K0
CentOS7.x系统配置记录
018.CentOS升级内核
一 更新yum源 1 [root@localhost ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 2 [root@localhost ~]# rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm 3 二 安装内核版本 2.1 查看当前内核版本 1 [root@localhost ~]# uname -a 2 L
木二
2021/04/20
8690
018.CentOS升级内核
Centos7.x升级内核版本
https://elrepo.org/linux/kernel/el7/x86_64/RPMS/
用户6792968
2022/08/30
7590
Centos7.x升级内核版本
n1.Docker安装运行所遇异常解决
描述:默认情况下Docker的存放位置为 /var/lib/docker , 具体的位置可以通过sudo docker info | grep "Docker Root Dir"查看。
全栈工程师修炼指南
2020/10/23
4.1K0
n1.Docker安装运行所遇异常解决
Centos内核版本升级
内核进行的是应用软件和计算机硬件的交互工作在计算机科学中,内核(英语:kernel)又称核心,是一个计算机程序,用来管理软件发出的数据I/O(输入与输出)要求,将这些要求转译为数据处理的指令,交由中央处理器(CPU)及计算机中其他电子组件进行处理,是现代操作系统中最基本的部分。 它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并由内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的。所以内核通常提供一种硬件抽象的方法,来完成这些操作。通过进程间通信机制及系统调用,应用进程可间接控制所需的硬件资源(特别是处理器及IO设备)。
惨绿少年
2019/07/02
3.8K0
Centos6.5下docker 环境搭建
一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡,退出容器.
Java架构师历程
2018/09/26
1.6K0
Centos6.5下docker 环境搭建
Centos7升级内核至5.4
用户5921339
2025/05/20
3160
Centos7升级内核至5.4
CentOS7.x系统配置记录
建议使用阿里云的源其他发行版等同:http://mirrors.aliyun.com/help/centos
全栈工程师修炼指南
2022/09/28
1.2K0
CentOS7.x系统配置记录
linux 实现centos7在线升级最新版本内核
Kernel  (内核)是操作系统的核心,掌握所有硬件设备的控制权,也就是说,你所希望计算机帮你完成的各项工作,都需要通过内核的帮助才能完成,当然,如果我们想完成的某个功能是内核没有的,则内核不会操控计算机来帮你完成这项工作,如果我们想让内核去完成这个功能,那么我们就必须将该功能的模块添加到内核当中,这就类似于驱动程序,有了这样一个“驱动程序”的支持后,我们的硬件才能完成之前所不能完成的功能。
用户4877748
2020/07/22
2.6K0
linux 实现centos7在线升级最新版本内核
相关推荐
Centos 7 升级系统内核
更多 >
LV.0
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验