关于Docker搭建CFNAT导致日志过大问题解决方案。

由于运行中会产生大量日志,我这里做了脚本,需要按照我的要求来完成。

群晖nas开启SSH端口。

用自己的SSH软件链接自己的NAS。

1.获得root权限:

sudo -i

会出现密码验证。再次输入自己的nas密码来获得root权限

图片[1]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

2.使用命令docker ps 就能列出所有在运行中的容器

docker ps

图片[2]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

使用下面的命令可以查看具体的日志内容

docker logs <容器id>

我这里需要执行的命令是:

docker logs ddc18acb0c78

输入命令后可看到我容器的日志。说明这个是我们要找的容器

图片[3]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

docker inspect --format='{{.LogPath}}' 上一部获得的容器ID,我这里就要写成下面的命令

docker inspect --format='{{.LogPath}}' ddc18acb0c78

图片[4]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

把这个地址在记录下来:

/volume1/@docker/containers/ddc18acb0c78b3df05e17da5aaf800ae6104eb3f9bc1a6ae2aab64704a51f622/log.db

图片[5]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

复制我的脚本并按照要求修改:

#!/bin/bash

# 设置日志文件的路径
LOG_FILE="/volume1/@docker/containers/ddc18acb0c78b3df05e17da5aaf800ae6104eb3f9bc1a6ae2aab64704a51f622/log.db"

# 设置 Docker 容器的 ID
CONTAINER_ID="ddc18acb0c78"

# 删除日志文件
if [ -f "$LOG_FILE" ]; then
    rm -f "$LOG_FILE"
    echo "Deleted log file: $LOG_FILE"
else
    echo "Log file does not exist: $LOG_FILE"
fi

# 重启 Docker 容器
if docker ps -q --filter "id=$CONTAINER_ID" | grep -q .; then
    docker restart "$CONTAINER_ID"
    echo "Restarted Docker container: $CONTAINER_ID"
else
    echo "Docker container not found: $CONTAINER_ID"
fi

图片[6]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

图片[7]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

新建:fcnat-log-del 脚本,已root权限运行

图片[8]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

图片[9]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

脚本运行地址:

bash /volume1/docker/logDel/cleanup_docker_logs.sh

图片[10]-关于Docker搭建CFNAT导致日志过大问题解决方案。-友友汇

这个容器每天产生的日志内容可能会超过100M,所以要已脚本方式,每天清理一次,之后会重新启动容器。保持容器的冗余数据清理。

声明:
1.本站部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
2.若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
3.如果本站有侵犯、不妥之处的资源,请联系我们。将会第一时间解决!
4.本站部分内容均由互联网收集整理,仅供大家参考、学习,不存在任何商业目的与商业用途。
5.本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与任何商业和非法行为,请于24小时之内删除!
© 版权声明
THE END
喜欢就支持一下吧
点赞16 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容