From f409939e6b5d3f90199a34d562b9d530305730b5 Mon Sep 17 00:00:00 2001 From: Lukas Date: Sun, 1 Mar 2026 19:43:10 +0100 Subject: [PATCH] fix: explicitly remove all named volumes in make clean The previous 'down -v' flag is unreliable across compose implementations. Declare all four dev volumes (bangui-dev_*) and remove them explicitly with 'podman/docker volume rm' so clean always leaves a pristine state. --- Makefile | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 8fdd56d..003a276 100644 --- a/Makefile +++ b/Makefile @@ -7,17 +7,31 @@ # Usage: # make up — start the debug stack # make down — stop the debug stack -# make clean — stop and remove all debug containers, volumes, and images +# make clean — stop and remove all debug containers AND volumes # make logs — tail logs for all debug services # make restart — restart the debug stack # ────────────────────────────────────────────────────────────── COMPOSE_FILE := Docker/compose.debug.yml +# Compose project name (matches `name:` in compose.debug.yml). +PROJECT := bangui-dev + +# All named volumes declared in compose.debug.yml. +# Compose prefixes them with the project name. +DEV_VOLUMES := \ + $(PROJECT)_bangui-dev-data \ + $(PROJECT)_frontend-node-modules \ + $(PROJECT)_fail2ban-dev-config \ + $(PROJECT)_fail2ban-dev-run + # Detect available compose binary. COMPOSE := $(shell command -v podman-compose 2>/dev/null \ || echo "podman compose") +# Detect available container runtime (podman or docker). +RUNTIME := $(shell command -v podman 2>/dev/null || echo "docker") + .PHONY: up down restart logs clean ## Start the debug stack (detached). @@ -38,5 +52,6 @@ logs: ## Stop containers and remove ALL debug volumes (database, node_modules, fail2ban data). ## This returns the environment to a clean first-run state. clean: - $(COMPOSE) -f $(COMPOSE_FILE) down -v --remove-orphans + $(COMPOSE) -f $(COMPOSE_FILE) down --remove-orphans + $(RUNTIME) volume rm $(DEV_VOLUMES) 2>/dev/null || true @echo "All debug volumes removed. Run 'make up' to start fresh."