1、Docker no space left on device
原因:空间不足
解决方式:
清理空间 docker system prune
2、/var/lib/docker/containers 占用过大
原因:日志文件占用过大
解决方式:
cat /dev/null > *-json.log
或者
增加dockerd启动参数,/etc/docker/daemon.json
{"log-driver":"json-file",
"log-opts": {"max-size":"2G", "max-file":"10"}
3、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
原因:系统参数默认配置过小
解决方式:
修改/etc/sysctl.conf里面的vm.max_map_count 调大
4、Got starting container process caused "process_linux.go:301:
running exec setns process for init caused \"exit status 40\"": unknown.
from time to time
原因:可能是cache问题引起
解决方式:
echo 1 > /proc/sys/vm/drop_caches
5、docker本机启动多台容器导致出现后续容器启动失败
原因:查看硬盘空间是否满,如果不是硬盘空间问题引起
解决方式:
vim /etc/sysctl.conf
添加参数 fs.aio-max-nr = 1048576
sysctl -p
6、Docker启动异常,状态反复restarting
Docker logs 容器名,查看异常日志
查看/var/log/messages
原因:内存跑满,引起OOM
解决方式:
释放内存后,再启动容器