docker报错:log-driver: (from flag: json-file, from file: json-file)

起因:

是意外停电,重启后报错,docker的unix内核启动不了。

//重启docker后,这个命令可以看到详细的报错消息。
journalctl -xe

//显示:这个docker配置文件/etc/Docker/daemon.json有如下冲突:log-driver: (from flag: json-file, from file: json-file)




原因:

{ 
"registry-mirrors" : [
  "https://docker.mirrors.ustc.edu.cn",
  "https://registry.docker-cn.com",
  "http://hub-mirror.c.163.com",
  "https://cr.console.aliyun.com",
  "https://mirror.ccs.tencentyun.com"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "10"
  }
}

//其中"log-driver": "json-file",这一句与/etc/sysconfig/docker这个文件里的配置有冲突

解决:

//在/etc/sysconfig/docker这个文件里找到:

OPTIONS=‘–selinux-enabled --log-driver=journald --signature-verification=false’

//上面的配置把--log-driver=journald这段删掉,这俩句冲突,导致docker启动失败,/etc/Docker/daemon.json文件里配置好了,这里就删了吧。

systemctl restart docker
//完结撒花了。