Docker修改daemon.json后无法启动的问题

2023-05-16

本文的运行环境为Centos 7.3,Docker与Kubernetes的安装方式见kubeadm安装kubernetes V1.11.1 集群

最近在整理Docker和Kubernetes中的日志与相关配置,在尝试通过/etc/docker/daemon.json配置Docker的log-driver参数,遇到了Docker无法启动的错误。

配置信息如下

{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "1m",
        "max-file": "5"
    }
}

错误提示如下

[root@devops-101 ~]# journalctl -amu  docker
-- Logs begin at Thu 2018-08-30 08:28:53 CST, end at Thu 2018-08-30 08:47:53 CST. --
Aug 30 08:29:07 devops-101 systemd[1]: Starting Docker Application Container Engine...
Aug 30 08:29:08 devops-101 dockerd-current[1102]: unable to configure the Docker daemon with file /etc/docker/daemon.json: the following directives are specified both as a flag and in the configuration file: log-dri
Aug 30 08:29:08 devops-101 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Aug 30 08:29:08 devops-101 systemd[1]: Failed to start Docker Application Container Engine.

这个含义应该是Docker启动的时候传入了命令行参数,同时也指定了配置文件,两个配置发生了冲突。那么就查看一下Docker服务启动文件。

[root@devops-101 ~]# vim /usr/lib/systemd/system/docker.service 
[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=-/run/containers/registries.conf
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
          --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
          --default-runtime=docker-runc \
          --exec-opt native.cgroupdriver=systemd \
          --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
          --init-path=/usr/libexec/docker/docker-init-current \
          --seccomp-profile=/etc/docker/seccomp.json \
          $OPTIONS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $ADD_REGISTRY \
          $BLOCK_REGISTRY \
          $INSECURE_REGISTRY \
          $REGISTRIES

可以看到启动的时候会从/etc/sysconfig/docker中获取环境变量。
继续查看这个配置文件。

[root@devops-101 ~]# vim /etc/sysconfig/docker
# /etc/sysconfig/docker

# Modify these options if you want to change the way the docker daemon runs
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'
if [ -z "${DOCKER_CERT_PATH}" ]; then
    DOCKER_CERT_PATH=/etc/docker
fi

可以看到参数中默认了--log-driver=journald,把这一段删掉就可以了。重启之后,就可以在/var/log/containers下看到容器产生的日志文件了。

[root@devops-101 containers]# pwd
/var/log/containers
[root@devops-101 containers]# ls 
coredns-78fcdf6894-52gp9_kube-system_coredns-6eea955dfaad8027b9382a9911817057c917e3187dee41502dcd687d8de18729.log
coredns-78fcdf6894-mkvqn_kube-system_coredns-16ed56195ca55c613dec218cfd57c647f8bbe0341b38c446210db98d6ab78f3c.log
etcd-devops-101_kube-system_etcd-42717aa4eda15817f05f35b68f84306ab83fd3f397426c2c9b47d71ebf61942b.log
kube-apiserver-devops-101_kube-system_kube-apiserver-0df17d68a3b1742e9e34620b759b4617f1949bbe2d826b03216419b6994db42c.log
kube-controller-manager-devops-101_kube-system_kube-controller-manager-ee1743e4a4c0114da1cfb32bd78f4f7a576bfc021aacd943e92d2e09cb41116d.log
kube-flannel-ds-7sgps_kube-system_install-cni-92ce6121a1a5456752f502c07ae324676e0d1297261dad266b385a5e6522852c.log
kube-flannel-ds-7sgps_kube-system_kube-flannel-e6eb715062314f175d9fbaa52323f93eeffbb9fa16eed95797c9950884f68b73.log
kube-proxy-79gws_kube-system_kube-proxy-8ce96b3b403d0f7231ca6a004bfec162a093f85ea940867264f50530846d3e0a.log
kube-scheduler-devops-101_kube-system_kube-scheduler-c7ce974eedbc3119320e729310e1b905f65df84dbe46624918dfc33628d9a864.log
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker修改daemon.json后无法启动的问题 的相关文章

  • 刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!

    刚刚 xff0c OpenStack 第 19 个版本来了 xff0c 附28项特性详细解读 xff01 OpenStack Stein版本引入了新的多云编排功能 xff0c 以及帮助实现边缘计算用例的增强功能 OpenStack由一系列相
  • Linux VNC server 安装配置

    1 安装vnc server root 64 pxe yum install tigervnc server y 2 设置 vnc server 开机启动 root 64 pxe chkconfig vncserver on 3 修改vnc
  • 常用非关系型数据库产品介绍

    1 memcache memcache xff08 键值型数据库 xff09 memcache是把访问的数据存在内存里面 xff0c 外部访问现在内存里面找 xff0c 找不到再从数据库里面找 xff0c 可以减轻数据库的压力 xff0c
  • Webpack 4.X 从入门到精通 - devServer与mode(三)

    上一篇文章里详细介绍了一下插件的用法 xff0c 这一篇文章接着丰富module exports里的属性 如今的前端发展已经非常迅速了 xff0c 伴随而来的是开发模式的转变 现在已经不再是写个静态页面并放在浏览器里打开预览一下了 在实际的
  • 块状元素与内联元素的区别

    css中块状元素是一个重要的知识点 xff0c css下height和width不起作用使我们经常遇到的问题 xff0c 这就需要我们正确区分块状元素和内联元素 块状元素和内联元素的区分很简单 xff0c 我们只需要注意html元素是否排斥
  • vsftp 锁定用户目录

    vsftp 安装以后给用户权限和锁定目录 xff1b 关闭SELinux xff1a 修改 etc selinux config文件中的SELINUX 61 34 34 为 disabled xff0c 然后重启 如果不想重启系统 xff0
  • 解决使用WinScp连接Ubantu系统失败的问题---SSH无法连接

    起因 为了互通Linux系统和Windows系统的文件 xff0c 以更好的实现文件管理和资源共享 所以在查阅资料后 xff0c 使用WinScp xff0c WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端 它的
  • 一文让你明白CPU上下文切换

    我们都知道 xff0c Linux 是一个多任务操作系统 xff0c 它支持远大于 CPU 数量的任务同时运行 当然 xff0c 这些任务实际上并不是真的在同时运行 xff0c 而是因为系统在很短的时间内 xff0c 将 CPU 轮流分配给
  • HBase shell scan 过滤器用法总结

    比较器 xff1a 前面例子中的regexstring 2014 11 08 binary x00 x00 x00 x05 xff0c 这都是比较器 HBase的filter有四种比较器 xff1a xff08 1 xff09 二进制比较器
  • [Ubuntu] LightDM 轻量级桌面显示管理器

    LightDM xff08 Light Display Manager xff09 是一个全新的轻量级 Linux 桌面显示管理器 xff0c 而传统的 Ubuntu 是使用 GNOME 桌面标准的 GDM LightDM 是一个跨桌面显示
  • 算法笔记--区间素数筛

    筛 l r 之间的合数 l lt 61 r lt 61 1e12 r l lt 61 1e6 筛小于等于r的合数所需的质因子大小最多不会超过根号r xff08 lt 61 1e6 xff09 模板 const int N 61 1e6 43
  • 使用Formik轻松开发更高质量的React表单(四)其他几个API解析

    旧话重提 前文中我特别提起Redux Form以及redux form的问题 xff0c 我觉得学习Formik你不得不提它们 xff0c 当然还有它们的 老祖宗 React xff1b 既然选择了 xff0c 那么你必须按照这个方向走下去
  • Linuxmint-mate (Ubuntu) 远程连接配置

    不慎搞崩了一台 Ubuntu 服务器 xff0c 本文记录重装系统 远程桌面系统 SSH 系统 用户配置等过程 选择系统 xff1a linuxmint 18 1 mate 优点 xff1a 兼容 Ubuntu 16 04 更加可控 xff
  • linux脚本数组元素赋值,shell 数组赋值

    shell编程 xff0c 给数组赋值及两个数组初始化与比较 bin sh output files 61 cat outfiles for i 61 0 i lt output files 64 43 43 i do echo 34 ar
  • 【独家】一文读懂数据可视化

    前言 数据可视化 xff0c 是指将相对晦涩的的数据通过可视的 交互的方式进行展示 xff0c 从而形象 直观地表达数据蕴含的信息和规律 早期的数据可视化作为咨询机构 金融企业的专业工具 xff0c 其应用领域较为单一 xff0c 应用形态
  • 【知云】第三期:云计算的弹性体现在哪些方面?

    摘要 xff1a 很多用户非常想了解云计算的弹性体现在哪些方面 xff1f 本文中云计算布道师倪波 xff08 花名 xff1a 竹雾 xff09 就为大家进行答疑解惑 xff0c 谈一谈云计算所提供的计算 存储以及网络方面的弹性 想要看视
  • 计算机网络第1章(概述)

    计算机网络第1章 xff08 概述 xff09 1 1因特网概述1 网络 互连网 xff08 互联网 xff09 和因特网2 因特网发展的三个阶段3 因特网的标准化工作4 因特网的组成 1 2 三种交换方式1 电路交换 xff08 Circ
  • 液晶显示器点屏方法步骤及参数表

    一 一 六大主要电压 面板的六项所需的基本电压 面板将输入的电压转成所需的电压 1 VIN xff1a 3 3V 5 0V 12V 基本输入电源 2 VDDD xff1a 3 3V 各IC所需的电源电压 xff0c 电源IC 3 VDDG
  • 常用nodejs版本管理

    nodejs管理版本的模块叫 n 首先安装n模块 xff1a npm install g n n后面也可以跟随版本号 n v4 2 4 另外几个常用命令 npm v 显示版本 xff0c 检查npm 是否正确安装 npm install e
  • plink源码_Debian -- 在 sid 中的 plink 软件包详细信息

    whole genome association analysis toolset plink expects as input the data from SNP single nucleotide polymorphism chips

随机推荐