20 lines
655 B
Bash
Executable file
20 lines
655 B
Bash
Executable file
#!/bin/bash
|
|
|
|
# 1. Alle docker-compose.yml bis Tiefe 2 finden
|
|
find . -maxdepth 2 -type f -name 'docker-compose.yml' | while read composefile; do
|
|
# 2. Images extrahieren, Pfad mit ausgeben
|
|
grep -E '^\s*image:' "$composefile" | awk -v file="$composefile" '{print file ": " $2}'
|
|
done | \
|
|
# 3. Registry extrahieren und gruppieren
|
|
awk -F'image:' '{gsub(/^[ \t]+|[ \t]+$/, "", $2); print $1 $2}' | \
|
|
awk -F': ' '{
|
|
image = $2
|
|
# Registry extrahieren
|
|
split(image, parts, "/")
|
|
if (length(parts) > 1 && index(parts[1], ".") > 0) {
|
|
registry = parts[1]
|
|
} else {
|
|
registry = "docker.io"
|
|
}
|
|
print registry ": " image " (" $1 ")"
|
|
}' | sort | uniq
|