插件窝 干货文章 Docker日志大小限制和切换存储目录

Docker日志大小限制和切换存储目录

Docker 配置 日志 bash 551    来源:    2025-04-20

Docker 日志大小限制与存储目录切换指南

日志大小限制配置

全局配置方法

  1. 修改或创建 /etc/docker/daemon.json 文件:
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}
  • max-size: 单个日志文件的最大大小 (如 10m 表示 10MB)
  • max-file: 保留的日志文件数量
  1. 重启 Docker 服务使配置生效:
sudo systemctl restart docker

单个容器配置

在运行容器时指定日志参数:

docker run --log-driver=json-file --log-opt max-size=10m --log-opt max-file=3 your_image

切换 Docker 存储目录

方法1:使用软链接

  1. 停止 Docker 服务:
sudo systemctl stop docker
  1. 移动现有数据:
sudo mv /var/lib/docker /new/path/docker
  1. 创建软链接:
sudo ln -s /new/path/docker /var/lib/docker
  1. 启动 Docker 服务:
sudo systemctl start docker

方法2:修改配置文件

  1. 修改或创建 /etc/docker/daemon.json 文件:
{
  "data-root": "/new/path/docker"
}
  1. 重启 Docker 服务:
sudo systemctl restart docker

验证配置

  1. 检查日志配置是否生效:
docker info --format '{{.LoggingDriver}}'
docker info --format '{{json .LoggingConfig}}'
  1. 检查存储目录是否更改:
docker info --format '{{.DockerRootDir}}'

注意事项

  1. 更改存储目录前确保 Docker 服务已停止
  2. 新目录需要有足够的磁盘空间
  3. 对于生产环境,建议将日志和存储目录放在独立的磁盘分区
  4. 对于大量日志的场景,考虑使用日志收集系统如 ELK 或 Fluentd

以上配置可根据实际需求调整参数值。