computer-playbook/roles/sys-ctl-hlth-docker-volumes
Kevin Veen-Birkenbach 7ad14673e1
sys-service: add ExecStartPost support and adjust health/repair roles
- extended generic systemctl template to support ExecStartPost
- health-docker-volumes: run main script with whitelist, trigger both compose alarm and cleanup on failure
- repair-docker-hard: added ExecStartPre lock, ExecStart, and ExecStartPost to trigger compose alarm always, plus cleanup on failure
- removed obsolete role-specific systemctl.service.j2 templates
- improved consistency across vars and defaults

See: https://chatgpt.com/share/68ad6cb8-c164-800f-96b6-a45c6c7779b3
2025-08-26 10:15:35 +02:00
..

Docker Volumes Health Check

Description

This role detects unused anonymous Docker volumes that are not bound to any running container.
It can optionally exclude specific volumes from the check using a configurable whitelist.

Overview

The role installs a script and a systemd service with a timer to periodically scan for leftover anonymous volumes.
This helps prevent wasted disk space and leftover resources from old deployments.

Purpose

The main purpose of this role is to keep Docker environments clean by identifying and reporting orphaned anonymous volumes.
It supports a whitelist mechanism to avoid alerting on known or intentional volumes.

Features

  • Anonymous Volume Detection: Identifies volumes with 64-character IDs not attached to any container.
  • Whitelist Support: Skips volumes listed in DOCKER_WHITELISTET_ANON_VOLUMES.
  • Bootstrap Volume Exclusion: Ignores known bootstrap volumes (e.g., /var/www/bootstrap).
  • Systemd Integration: Installs a one-shot service and timer to automate checks.
  • Alerting Support: Works with the sys-ctl-alm-compose role for failure notifications.

Further Resources