RCA-2026-03-17-001: Fix Applied
Resolution
Immediate Actions
Cleanup command using xargs:
# List running Kroki containers
docker ps --filter "name=domus-kroki"
# Stop all Kroki containers in one command
docker ps -q --filter "name=domus-kroki" | xargs docker stop
xargs Pattern Breakdown
docker ps -q --filter "name=domus-kroki" | xargs docker stop
# │ │ │
# │ │ └─ xargs: pass container IDs as args to docker stop
# │ └─ filter: only containers matching "domus-kroki"
# └─ -q: quiet mode, output only container IDs
Why xargs here:
-
docker stopaccepts multiple container IDs -
xargs batches the IDs from stdin into a single command
-
Avoids loop:
for id in $(docker ps -q …); do docker stop $id; done -
One process instead of N processes
Alternative (explicit names)
docker stop domus-kroki domus-kroki-bpmn domus-kroki-excalidraw domus-kroki-mermaid
Less flexible - requires knowing all container names.
Verification
docker ps --filter "name=domus-kroki"
# Should return empty (no containers)
CLI Mastery: xargs Patterns for Docker
# Stop containers by pattern
docker ps -q --filter "name=prefix" | xargs docker stop
# Remove stopped containers by pattern
docker ps -aq --filter "name=prefix" | xargs docker rm
# Remove images by pattern
docker images -q "*/pattern*" | xargs docker rmi
# Prune with confirmation bypass
docker ps -q --filter "status=exited" | xargs -r docker rm
# Parallel stop (faster for many containers)
docker ps -q --filter "name=prefix" | xargs -P 4 -I {} docker stop {}