Docker定时清理

一、循环调度执行

1、检查cron状态

bash 复制代码
systemctl status crond

2、创建要执行的shell脚本

vim /home/cleanup_docker.sh

bash 复制代码
#! /bin/bash
# 清理临时文件
echo $(date +"%H:%M:%S") "执行docker清理命令..."
docker system prune -af

-a 清理包括未使用的镜像

-f 跳过确认提示,强制执行清理操作

3、打开cron任务编辑页面

bash 复制代码
crontab -e

4、编辑定期任务

bash 复制代码
0 0 ? * Sun /home/cleanup_docker.sh >> /home/cronlogs/cronlog.log 2>&1

0 0 ? * Sun // 每周日00:00:00执行一次

/home/cleanup_docker.sh // 执行的shell脚本根路径

>> /home/cronlogs/cronlog.log 2>&1 // 将日志文件打印到指定文件(可以不要)

二、常用命令

1、cron相关命令

(1)启动 sudo systemctl start crond

(2)停止 sudo systemctl stop crond

(3)查看状态 sudo systemctl status crond

(4)重启 systemctl restart crond

2、计划任务

(1)存储位置 /var/spool/cron

(2)查看任务 crontab -l

(3)删除任务 crontab -r

3、日志存储位置

/var/spool/mail

/var/log/cron

三、可能出现的问题

1. 提示权限不足

解决:用户没有脚本执行权限,需要授予

bash 复制代码
chmod u+x cleanup_docker.sh

2. Failed to start cron.service: Unit cron.service not found.

解决:启动cron服务命令拼写错误,正确的是

bash 复制代码
sudo service crond start

参考:

Linux 计划任务与日志管理_linux cron日志-CSDN博客

相关推荐
Zfox_8 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 融合计算、Cube Unit Tiling 机制与编程范式实践
docker·云原生·容器·eureka
威迪斯特9 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
一方热衷.9 小时前
在线安装对应版本NVIDIA驱动
linux·运维·服务器
独自归家的兔9 小时前
ubuntu系统安装dbswitch教程 - 备份本地数据到远程服务器
linux·运维·ubuntu
ONE_SIX_MIX9 小时前
ubuntu 24.04 用rdp连接,桌面黑屏问题,解决
linux·运维·ubuntu
龙飞059 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
春日见9 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡9 小时前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器
消失的旧时光-19439 小时前
Linux 编辑器入门:nano 与 vim 的区别与选择指南
linux·运维·服务器
斯普信专业组9 小时前
构建基于MCP的MySQL智能运维平台:从开源服务端到交互式AI助手
运维·mysql·开源·mcp