目 录CONTENT

文章目录

Docker之xfs文件系统下安装报错解决方案

Administrator
2025-07-30 / 0 评论 / 2 点赞 / 4 阅读 / 0 字
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Docker之xfs文件系统下安装报错解决方案

一、需求说明
centos系统下安装docker最新版的时候,安装成功,启动的时候报错。 报错信息

Nov 22 15:53:20 k8s-4504 dockerd: time="2024-11-22T15:53:20.808510752+08:00" level=info msg="stopping event stream following graceful shutdown" error="context canceled" module=libcontainerd namespace=plugins.moby”。

ftype=0.png
经过一系列排查发现,原来是centos早起版本安装系统的时候如果选择的xfs文件系统格式,默认是ftype=0,如果安装新版docker要求ftype=1。为了解决docker启动问题,我们需要一块ext4或者xfs的ftype=1的磁盘,此博文以此为例进行介绍如何解决docker启动遇到d_type参数错误问题。博文实验环境如下:

操作系统:centos 7.4
docker版本:24.0.2

二、解决方案

1、查看磁盘xfs信息

为了确定原因,我们首先检查xfs磁盘的ftype值,docker默认根位置是在/var/lib/docker,我们检查的根分区,可以看到ftype当前是0,不满足要求。
ftype=0.png

2、确认系统是否支持overlay
我们需要先确定系统是否添加overlay模块到内核,如下命令如果没有任何输出说明不支持,我们需要执行步骤3。

lsmod |grep over
overlay                91659  17

3、添加系统内核支持overlay
如果步骤2没有执行后没有任何输出则需要使用modprobe添加overlay模块到内核中,然后重启系统。

4、添加一块新磁盘

5、格式化磁盘
将磁盘分区格式化,格式化的时候指定ftype=1。

mkfs.xfs -n ftype=1 /dev/mapper/xxxx

6、创建挂载目录
创建一个挂载目录。

mkdir -p /docker

7、挂载/docker目录
将新磁盘挂载到新目录。

mount /dev/mapper/xxxx /docker

8、查看磁盘xfs参数信息
挂载后查看/docker分区的xfs参数信息,确定ftpye参数值为1。

xfs_info /docker

ftype=1.png

9、修改docker的daemon.json配置文件
docker默认根目录是/var/lib/docker,如果是根分区参数不满足要求基本上不可能进行参数修改。所以我们需要重新制定docker的根目录,创建/etc/docker/daemon.json文件并写入如下内容。

{
  ...
  "data-root": "/docker/var/lib/docker",    
  "storage-driver": "overlay2",
  ...
}

10、重新启动docker

systemctl daemon-reload && systemctl restart docker

参考文档

Docker之xfs文件系统下安装报错解决方案

2
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区