如何清除docker容器日志记录

docker容器的日志存放位置一般在/var/lib/docker/containers目录下,通过容器ID即可找到你想删除日志的容器,日志文件格式一般为“容器ID-json.log”,为了避免删除日志文件出现错误,最后清空日志文件。

#清空日志文件内容
truncate -s 0 容器ID-json.log

如果嫌麻烦,可以设置定时任务shell脚本

#!/bin/bash
# 清空所有 Docker 容器日志的脚本

# 获取所有正在运行的容器 ID
container_ids=$(docker ps -q)

# 遍历每个容器
for container_id in $container_ids; do
    # 获取容器的日志文件路径
    log_path=$(docker inspect --format='{{.LogPath}}' "$container_id")

    # 检查日志文件是否存在
    if [ -f "$log_path" ]; then
        echo "正在清空容器 $container_id 的日志文件: $log_path"
        # 使用 truncate 命令清空日志文件内容
        sudo truncate -s 0 "$log_path"
    else
        echo "容器 $container_id 的日志文件不存在: $log_path"
    fi
done

echo "所有容器的日志文件已清空。"

,