docker容器启动报错
报错内容如下
Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/e6472f6c7675054284c3a62f6388b52d3d34bd99e492a351dd5a28b724634f/merged: invalid argument
Error: failed to start containers: spug
原因分析
网上搜索一下解决方法,千篇一律,都是清除docker 镜像,更换文件系统。由于昨天还能启动容器,想必不是文件系统的问题。其实又是selinux造成的,昨天把selinux永久关闭导致的。Fedora的selinux是关闭的,而docker上的selinux却是开启的,因此docker运行时会产生如上错误。
另外docker 18.09已经废弃使用overlay1了,overlay2存储才是今后所支持的,因此不建议按照网上某文章的教程那样将docker的存储驱动改回overlay1。改回overlay1的方式只是治标不治本,正解是修改selinux配置。
解决方法1
修改Fedora下的/etc/selinux/config 将SELINUX=disabled 改成 SELINUX=permissive(宽容模式)
保存重启
修改完保存退出(按esc ,输入:wq回车), 重启linux(reboot)即可启动容器。
解决方法2
由于开启宽容模式后,setroubleshootd进程占用过多CPU,导致硬解卡顿,建议使用如下方法:
【建议】修改docker关闭selinux
vi /etc/sysconfig/docker
# 找到OPTIONS="--selinux-enabled --log-driver=journald --signature-verification=false"# 删除 --selinux-enabledOPTIONS="--log-driver=journald --signature-verification=false"# 保存
:wq
注意:已经启动的容器需要删除,然后删除镜像,重新拉取启动。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】