Docker修改daemon.json添加日志后无法启动的问题

这篇具有很好参考价值的文章主要介绍了Docker修改daemon.json添加日志后无法启动的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker的daemon.json,docker,容器

docker实战(一):centos7 yum安装docker

docker实战(二):基础命令篇

docker实战(三):docker网络模式(超详细)

docker实战(四):docker架构原理

docker实战(五):docker镜像及仓库配置

docker实战(六):docker 网络及数据卷设置

docker实战(七):docker 性质及版本选择

认知升维: 道、法、术、器、势


一:  配置docker日志文件

通过​​/etc/docker/daemon.json​​​配置Docker的​​log-driver​​参数,遇到了Docker无法启动的错误。


配置信息如下:

[root@www ~]# cat /etc/docker/daemon.json 
{
    "registry-mirrors": [
        "https://d8b3zdiw.mirror.aliyuncs.com",
        "https://reg-mirror.qiniu.com/",
        "https://hub-mirror.c.163.com/",
        "https://docker.mirrors.ustc.edu.cn/"
    ],
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "50m",
        "max-file": "5"
    }
     
}

查看日志: journalctl -amu docker 

错误信息:

dockerd-current[3335]: 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: graph: (from flag: /data/docker
8月 18 12:02:09 www.yhchange.com systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
8月 18 12:02:09 www.yhchange.com systemd[1]: Failed to start Docker Application Container Engine.
8月 18 12:02:09 www.yhchange.com systemd[1]: Unit docker.service entered failed state.
8月 18 12:02:09 www.yhchange.com systemd[1]: docker.service failed.
8月 18 12:05:49 www.yhchange.com systemd[1]: Starting Docker Application Container Engine...
8月 18 12:05:49 www.yhchange.com dockerd-current[3446]: unable to configure the Docker daemon with file /etc/docker/daemon.json: the following directives don't match any configuration option: data-root
8月 18 12:05:49 www.yhchange.com systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
8月 18 12:05:49 www.yhchange.com systemd[1]: Failed to start Docker Application Container Engine.
8月 18 12:05:49 www.yhchange.com systemd[1]: Unit docker.service entered failed state.
8月 18 12:05:49 www.yhchange.com systemd[1]: docker.service failed.


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

二: 可以看到启动的时候会加载EnvironmentFile=-/etc/sysconfig/docker 配置文件

[root@www ~]# cat /usr/lib/systemd/system/docker.service 
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
Requires=docker-cleanup.timer

[Service]
Type=notify
NotifyAccess=main
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 --graph /data/docker_data \
          --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
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
Restart=on-abnormal
KillMode=process

[Install]
WantedBy=multi-user.target


看下配置文件信息:

cat  /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

# Do not add registries in this file anymore. Use /etc/containers/registries.conf
# instead. For more information reference the registries.conf(5) man page.

# Location used for temporary files, such as those created by
# docker load and build operations. Default is /var/lib/docker/tmp
# Can be overriden by setting the following environment variable.
# DOCKER_TMPDIR=/var/tmp

# Controls the /etc/cron.daily/docker-logrotate cron job status.
# To disable, uncomment the line below.
# LOGROTATE=false

# docker-latest daemon can be used by starting the docker-latest unitfile.
# To use docker-latest client, uncomment below lines
#DOCKERBINARY=/usr/bin/docker-latest
#DOCKERDBINARY=/usr/bin/dockerd-latest
#DOCKER_CONTAINERD_BINARY=/usr/bin/docker-containerd-latest
#DOCKER_CONTAINERD_SHIM_BINARY=/usr/bin/docker-containerd-shim-latest
 

 三: 去掉配置文件中: --log-driver=journald

 重新启动:
 

[root@www ~]# systemctl daemon-reload
[root@www ~]# systemctl restart docker
[root@www ~]# systemctl status docker
docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2023-08-20 11:38:00 CST; 9s ago
     Docs: http://docs.docker.com
 Main PID: 2160 (dockerd-current)
    Tasks: 32
   CGroup: /system.slice/docker.service
           ├─2160 /usr/bin/dockerd-current --graph /data/docker_data --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/doc...
           └─2171 /usr/bin/docker-containerd-current -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --r...

8月 20 11:37:59 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:37:59.491453685+08:00" level=info msg="libcontainerd: new containerd process, pid: 2171"
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.615692314+08:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.617335438+08:00" level=info msg="Loading containers: start."
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.644238265+08:00" level=info msg="Firewalld running: false"
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.829163222+08:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set ...rred IP address"
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.883382659+08:00" level=info msg="Loading containers: done."
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.937997301+08:00" level=info msg="Daemon has completed initialization"
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.938173411+08:00" level=info msg="Docker daemon" commit="7d71120/1.13.1" graphdriver=overlay2 version=1.13.1
8月 20 11:38:00 www.yhchange.com dockerd-current[2160]: time="2023-08-20T11:38:00.954810143+08:00" level=info msg="API listen on /var/run/docker.sock"
8月 20 11:38:00 www.yhchange.com systemd[1]: Started Docker Application Container Engine.
Hint: Some lines were ellipsized, use -l to show in full.
 


docker的daemon.json,docker,容器

 文章来源地址https://www.toymoban.com/news/detail-742375.html

到了这里,关于Docker修改daemon.json添加日志后无法启动的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu20.04开机黑屏左上角光标闪烁,以及移除Nvidia驱动后造成的无法启动docker容器问题Error response from daemon: could not select device driver "" with capabilities: [[gpu]]

        这几天系统更新,显卡驱动由525.147.05升级到了535.171.04(tested),终端运行watch -n 1 nvidia-smi 实时显示显卡占用情况时,偶尔出现 Failed to initialize NVML: Driver/library version mismatch 问题, 于是将驱动切换成open kernal版本,重启后黑屏左上角光标闪烁,于是尝试使用命令行移除

    2024年04月15日
    浏览(51)
  • 解决WSL2的ubuntu20.04中安装docker出现无法连接的问题(Cannot connect to the Docker daemon)

    wsl2的ubuntu20.04系统安装docker可以参考官网教程操作,我个人喜欢参考其中的离线安装方式:Install from a package。只需要按照官网一步步操作即可,跟普通的ubuntu20.04的安装是一样的步骤。 在安装完以后,发现一旦使用docker相关命令会出现下述问题: 说明docker没有正常启动。这

    2024年04月23日
    浏览(49)
  • docker中出现日志损坏无法读取问题

    问题描述 今天执行es容器当中遇到这么个问题 简而言之大概就是抓取日志错误 解决方法 找到你的日志文件目录 之后备份后进行删除就好了

    2024年02月13日
    浏览(25)
  • 【Docker】docker的daemon.json配置推荐

    1. 修改配置 2. 使配置生效

    2024年02月14日
    浏览(39)
  • Elasticsearch 集群某一节点修改 IP 后无法启动问题复盘

    集群版本:6.8.X 集群节点:5节点(三个节点为主+数据节点,另外两个独立数据节点)。 问题描述:由于IP冲突,修改了一台服务器的IP,然后5台配置改了一下一次重启,能启动,但是连不上,后台各种报错。 节点换 IP 原因探讨:宿主机服务器的IP地址和别的服务器IP 冲突,

    2024年02月16日
    浏览(36)
  • 排查docker无法启动问题

    查看Linux系统操作日志(最后200行就可以排查): tail -200f /var/log/messages  

    2024年02月13日
    浏览(30)
  • docker容器daemon.json配置文件详解

    daemon.json 文档说明:         docker安装后默认没有daemon.json这个配置文件,需要进行手动创建,docker不管是在哪个平台以何种方式启动, 默认都会来这里读取配置,使用户可以统一管理不同系统下的 docker daemon 配置。         如果在daemon.json文件中进行配置,需要docker版本高于

    2024年02月11日
    浏览(50)
  • docker 中 /etc/docker/daemon.json 都有哪些常用配置

    以下是一些常见的配置选项: “debug”: 布尔值,用于启用或禁用调试模式。 “log-level”: 设置Docker日志的详细级别,可选值为 “debug”, “info”, “warn”, “error”, “fatal” 或 “panic”。 “storage-driver”: 指定Docker的存储驱动,常见的选项包括 “overlay2”、“aufs”、“btrf

    2024年02月16日
    浏览(36)
  • Abaqus许可证问题报错无法启动修改License Server地址的方法

    Abaqus许可证问题报错无法启动修改License Server地址的方法,错误信息如下: 打开安装文件夹下的如下文件并进行编辑:C:SIMULIAEstProducts2021win_b64SMAsitecustom_v6.env 修改字段为需要的内容:abaquslm_license_file=\\\"27800@localhost\\\" 保存文件再运行Abaqus CAE就能正常启动了。

    2024年02月12日
    浏览(158)
  • windows下docker长期不用无法启动问题

    win10电脑中原本安装的docker,在很长一段时间没有启动之后,再次启动发现无法启动了。直接重装也无法重装。 启动docker桌面管理软件后,一直在docker engine starting卡住。 因为没有安装wsl或wsl因为某些原因不可用了。 打开命令行窗口,输入 wsl --list --verbose 查看wsl版本,如果输

    2023年04月25日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包