homeserver/wartungsskripte/status-check.sh
2026-08-15 23:12:07 +02:00

27 lines
No EOL
939 B
Bash

printf "%-25s | %-35s | %-10s\n" "ORDNER" "URL" "STATUS"
printf "%s\n" "--------------------------------------------------------------------------------"
for dir in */; do
env_file="${dir}.env"
compose_file="${dir}docker-compose.yml"
if [ -f "$env_file" ] && [ -f "$compose_file" ]; then
sub=$(grep '^SUBDOMAIN=' "$env_file" | cut -d'=' -f2-)
domain=$(grep '^DOMAIN=' "$env_file" | cut -d'=' -f2-)
cname=$(grep '^CONTAINER_NAME=' "$env_file" | cut -d'=' -f2-)
if [ -n "$sub" ] && [ -n "$domain" ]; then
url="${sub}.${domain}"
else
url="${domain:-N/A}"
fi
status="STOPPED"
if [ -n "$cname" ] && [ "$(docker ps -q -f name="^${cname}$")" ]; then
status="RUNNING"
elif [ "$(docker compose -f "$compose_file" ps --status running -q 2>/dev/null)" ]; then
status="RUNNING"
fi
printf "%-25s | https://%-33s | %-10s\n" "${dir%/}" "$url" "$status"
fi
done