前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一次docker启动失败的问题排查与解决

记一次docker启动失败的问题排查与解决

作者头像
大刚测试开发实战
发布2022-11-14 14:41:58
4.2K0
发布2022-11-14 14:41:58
举报

背景

国庆假期回来,照例将几台内网服务器开机重启,其中一台服务器的docker服务却怎么都启动不起来。

根据报错提示中journalctl -xe命令查看细节日志,发现docker服务初始化失败。

常见解决方案

在网上查询了一些方法,主要有以下两种:

1.umask更改docker权限

代码语言:javascript
复制
systemctl unmask docker.service
systemctl unmask docker.socket
systemctl start docker.service

来源:https://www.jb51.cc/docker/1038977.html

2.创建daemon.json文件

代码语言:javascript
复制
vi /etc/docker/daemon.json  # 编辑此文件,并插入内容{}

来源:http://www.bubuko.com/infodetail-3730260.html

问题排查与解决

试了一下,第一种方式不行,第二种因为我本地本身就有此文件,所以无需尝试。

但是在查看daemon.json文件时,其中有一项配置"graph": "/home/docker_home"给了我启发,因为我曾经更改过docker的主目录,于是查看/home下的docker_home目录:

发现并无此目录,/home下只有区区两三个目录,这显然不对。这才想起这台服务器一直挂载了一块磁盘,就挂载在/home下,于是通过“df -h”命令发现/home目录只有53G,该磁盘并未挂载在下面。

问题原因:存有docker相关文件目录的磁盘未挂载

查看磁盘挂载情况:

代码语言:javascript
复制
fdsik -l  # 查看磁盘挂载情况

找到了该块磁盘/dev/sdb

解决方案:挂载磁盘到指定目录

挂载磁盘:

代码语言:javascript
复制
mount /dev/sdb /home  # 将磁盘/dev/sdb挂载到/home目录下

再次查看/home目录,原来的docker_home目录已恢复:

重启docker服务:

代码语言:javascript
复制
systemctl start docker
systemctl status docker

docker服务已恢复正常:

小结

此次docker初始化失败问题的原因是由于我更改过docker的主目录,而docker的主目录存放于某个磁盘中,该磁盘未挂载,所以找不到docker相关目录文件所致。挂载磁盘、重启docker后恢复正常。

至于为什么更改docker主目录,是因为docker安装后默认主目录为/var/lib/docker,默认每个docker容器容量上限为50GB,改到/home下后,docker容器的容量就没有上限,/home所在磁盘容量越大,docker容器的容量就越大。当然也可以通过其他方式扩展docker容器的容量。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发实战 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 常见解决方案
    • 1.umask更改docker权限
      • 2.创建daemon.json文件
      • 问题排查与解决
        • 问题原因:存有docker相关文件目录的磁盘未挂载
          • 解决方案:挂载磁盘到指定目录
          • 小结
          相关产品与服务
          容器镜像服务
          容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档