docker相关--dockerd日志设置

背景

  • 线上容器dockerd的后台程序打印了超过几十G的日志

    Docker daemon日志的位置:

  • Docker daemon日志的位置,根据系统不同各不相同。
  • Ubuntu - /var/log/upstart/docker.log
  • Boot2Docker - /var/log/docker.log
  • Debian GNU/Linux - /var/log/daemon.log
  • CentOS - /var/log/daemon.log | grep docker
  • Fedora - journalctl -u docker.service
  • Red Hat Enterprise Linux Server - /var/log/messages | grep docker
  • 参考:http://stackoverflow.com/questions/30969435/where-is-the-docker-daemon-log

    解决

  • 参考文章:Docker守护进程的配置及日志
  • 参考文章:docker深入2-linux下的配置文件daemon.json使用示例 讲配置文件daemon.json的完整示例
  • 参考官网日志设置:Enable debugging
  • 修改/etc/docker/daemon.json,添加log-level为debug, info, warn, error, fatal.默认是info。
  • Send a HUP signal to the daemon to cause it to reload its configuration. On Linux hosts, use the following command.
$ sudo kill -SIGHUP $(pidof dockerd)
  • 或者在启动docker daemon的时候设置日志看级别:
dockerd --log-level debug  
dockerd -l debug  
  • 正确启动dockerd的姿势:
    • 其中nohup用于使命令忽略挂起的信号
    • ignoring hangup signals.
    • 重定向日志是如果手动启动dockerd程序会在控制台打印日志,不会到规定的日志目录
    sudo nohup docker -d --log-level warn > docker.log &

你可能感兴趣的:(docker相关--dockerd日志设置)