Docker日志文件全局配置

这段配置是Docker容器的日志驱动配置,具体来说是json-file日志驱动的配置。这个配置的作用是定义容器日志文件的大小和数量限制。

bash 复制代码
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "500m",
        "max-file": "3"
    }
}

完整的配置

bash 复制代码
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": true,
  "features": {
    "buildkit": true
  },
  "insecure-registries": [
    "内外地址"
  ],
  "registry-mirrors": [
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://ccr.ccs.tencentyun.com",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.ustc.edu.cn"
  ],
  "log-driver":"json-file",
  "log-opts": {
    "max-size":"1024m",
    "max-file":"3"
  }
}

描述

这个配置文件通常位于/etc/docker/daemon.json或/etc/docker/config.json,并且只有在Docker版本1.13及以上时才被支持。

以下是配置中各个部分的解释:
  • builder: 这是一个对象,它包含了与Docker构建器(builder)相关的选项。
  • gc: 这是一个对象,它包含了与构建器垃圾收集(garbage collection)相关的选项。
  • defaultKeepStorage: 定义了默认保留构建上下文(context)的存储空间大小,这里是20GB。
  • enabled: 定义了是否启用构建器垃圾收集,这里是true,表示启用。
  • experimental: 这是一个布尔值,它表示是否启用实验性功能。当设置为true时,它会启用Docker的一些实验性功能。
  • features: 这是一个对象,它包含了与Docker功能相关的选项。
  • buildkit: 这是一个布尔值,它表示是否启用BuildKit功能。BuildKit是一个实验性的构建工具,用于改进Docker构建性能。当设置为true时,它会启用BuildKit功能。
  • insecure-registries: 这是一个数组,它包含了允许Docker访问的不安全镜像仓库地址。这些仓库通常不需要进行验证,可能会带来安全风险。
  • registry-mirrors: 这是一个数组,它包含了Docker可以使用的镜像仓库代理(mirror)地址。这些代理可以加快镜像的下载速度。
  • log-driver: 定义了Docker守护进程使用的日志驱动类型,这里是json-file,表示使用JSON格式的文件来记录日志。
  • log-opts: 这是一个对象,它包含了与日志驱动相关的选项。
  • max-size: 定义了单个日志文件的最大大小,这里是1024m,即1024MB。
  • max-file: 定义了最多可以保留的日志文件数量,这里是3。
  • 这个配置文件的作用是配置Docker守护进程的行为,包括如何处理构建器垃圾收集、是否启用实验性功能、使用哪些镜像仓库代理、以及如何记录日志。这些设置会影响Docker的性能、安全性以及日志记录。

例如,如果max-file设置为3,并且当前有3个日志文件,每个文件大小为1024MB,那么即使第四个日志文件的大小只有1MB,Docker也会删除最早的日志文件以保持文件数量为3。

这种配置对于确保容器日志不会占用过多的存储空间,尤其是在生产环境中,是非常有用的。

相关推荐
测试员周周3 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
风落无尘5 小时前
Stable Diffusion WebUI & ComfyUI 完整安装教程:官方部署+一键整合包+Docker容器化(2026最新)
docker·容器·stable diffusion
在角落发呆7 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
裴东青9 小时前
10-实战:RuoYi-Cloud的自动化发布
运维·ci/cd·自动化
哎呦,帅小伙哦9 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
sxgzzn9 小时前
新能源场站数智化转型:基于数字孪生与AI的智慧运维管理平台解析
大数据·运维·人工智能
张小姐的猫9 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
CodeMartain10 小时前
Dify Windows 原生部署(无 Docker、纯本地)
运维·docker·容器
xxx1x1x10 小时前
极客向:DLL/运行库故障的底层逻辑与自动化修复方案
运维·自动化·dll文件·dll·dll修复·dll缺失·dll一键修复
YuanDaima204810 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能