docker 启动报错:Error starting daemon: SELinux is not supported with the overlay2 graph ...false)

环境:centos7

命令:systemctl start docker

          systemctl status docker -l

报错:Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kernel or disable selinux in docker (--selinux-enabled=false)

解决方案:

 

意思是说:此linux的内核中的SELinux不支持 overlay2 graph driver ,解决方法有两个,要么启动一个新内核,要么就在docker里禁用selinux,--selinux-enabled=false

重新编辑docker配置文件:

vi /etc/sysconfig/docker

\

改为:

\

然后systemctl start docker 就好啦

### Docker启动失败解决方案 当遇到`Job for docker.service failed because the control process exited with error code.`这样的错误提示时,可以采取一系列措施来排查并解决问题。 #### 1. 检查日志信息 通过命令`systemctl status docker.service`以及`journalctl -xe`获取详细的错误描述。这一步骤有助于了解具体的故障原因[^1]。 例如,在某些情况下可能会看到如下错误消息:“[graphdriver] prior storage driver overlay2 failed: driver not supported”。这意味着当前环境可能不支持所使用的存储驱动程序overlay2[^2]。 对于另一种情况,“unable to configure the Docker daemon with file /etc/docker/daemon.json: invalid character '#' looking for beginning of value”,则表明配置文件存在语法上的问题,可能是由于意外字符导致解析失败[^3]。 #### 2. 验证依赖项和服务状态 确保SELinux处于宽容模式(permissive mode),因为严格的安全策略可能导致容器无法正常运行;另外还需确认内核参数已正确设置以满足Docker的要求。 如果是因为storage driver的问题,则应考虑更换为其他兼容性更好的选项如devicemapper或vfs,并相应调整/etc/docker/daemon.json中的配置: ```json { "storage-driver": "devicemapper" } ``` 针对配置文件中非法字符引发的异常,建议仔细审查该JSON文档的内容,移除任何不必要的注释或其他不符合标准的数据结构成员。 #### 3. 更新软件包与重启服务 考虑到不同版本之间的兼容性差异,有时重新安装较旧版次但稳定可靠的RPM包能够有效规避潜在冲突。完成上述修改之后记得执行`yum update`更新系统组件至最新可用版本,最后尝试再次启动Docker服务(`systemctl restart docker`)。 ```bash sudo yum clean all && sudo yum makecache fast sudo yum install --setopt=obsoletes=0 docker-ce-<VERSION_STRING> sudo systemctl enable docker sudo systemctl start docker ``` 以上方法涵盖了多种常见场景下的处理方式,具体操作需依据实际环境中获得的日志反馈来进行针对性修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值