v1.1.0
This commit is contained in:
@@ -1,20 +1,93 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Script Name: dockernet-inspector.v1.sh
|
||||
# Beschreibung: Dockernet Inspector - Zeigt Details zu einem Docker-Netzwerk an (Netzwerktyp, Bridge-Interface, Subnet/Gateway, Interface-Status & Stats)
|
||||
# Verwendung: bash ./dockernet-inspector.v1.sh <docker-network-name>
|
||||
# Beschreibung: Dockernet Inspector - Verwaltet und inspiziert Docker-Netzwerke
|
||||
# - Alle Netzwerke auflisten
|
||||
# - Details zu einem spezifischen Docker-Netzwerk anzeigen
|
||||
# (Netzwerktyp, Bridge-Interface, Subnet/Gateway, Interface-Status & Stats)
|
||||
# Verwendung: bash ./dockernet-inspector.v1.sh [BEFEHL] [OPTIONS]
|
||||
# Befehle:
|
||||
# networks - Alle Docker Netzwerke auflisten
|
||||
# inspect - Details zu einem Netzwerk anzeigen (Standard)
|
||||
# help, -h, --help - Diese Hilfe anzeigen
|
||||
# Autor: Patrick Asmus
|
||||
# Web: https://www.cleveradmin.de
|
||||
# Git-Reposit.: https://git.techniverse.net/scriptos/dockernet-inspector.git
|
||||
# Version: 1.0.0
|
||||
# Version: 1.1.0
|
||||
# Datum: 17.02.2026
|
||||
# Modifikation: Initial
|
||||
# Modifikation: Funktion zum Auflisten aller Docker Netzwerke hinzugefügt
|
||||
#####################################################
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
NET="${1:-}"
|
||||
[[ -z "$NET" ]] && { echo "Usage: $0 <docker-network-name>"; exit 1; }
|
||||
# Hilfe-Funktion
|
||||
show_help() {
|
||||
cat <<HELP
|
||||
Dockernet Inspector v1.1.0 - Docker Netzwerk Verwaltungstool
|
||||
|
||||
VERWENDUNG:
|
||||
$0 networks - Alle Docker Netzwerke auflisten
|
||||
$0 inspect <netzwerk> - Details zu einem Netzwerk anzeigen
|
||||
$0 <netzwerk> - Alias für 'inspect <netzwerk>'
|
||||
$0 help - Diese Hilfe anzeigen
|
||||
|
||||
BEFEHLE:
|
||||
networks Listet alle verfügbaren Docker Netzwerke auf
|
||||
inspect <netzwerk> Zeigt detaillierte Informationen zu einem Netzwerk:
|
||||
- Netzwerktyp (Driver)
|
||||
- Bridge-Interface
|
||||
- Subnetz und Gateway
|
||||
- Interface-Status
|
||||
- Netzwerk-Statistiken (RX/TX bytes und packets)
|
||||
help Zeigt diese Hilfe an
|
||||
|
||||
BEISPIELE:
|
||||
$0 networks
|
||||
$0 inspect mynetwork
|
||||
$0 mynetwork
|
||||
$0 -h
|
||||
|
||||
HELP
|
||||
}
|
||||
|
||||
# Funktion zum Auflisten aller Docker Netzwerke
|
||||
list_networks() {
|
||||
echo "Verfügbare Docker Netzwerke:"
|
||||
echo "=============================="
|
||||
docker network ls --format "table {{.ID}}\t{{.Name}}\t{{.Driver}}\t{{.Scope}}" || {
|
||||
echo "Fehler: Docker Netzwerke konnten nicht abgerufen werden."
|
||||
exit 2
|
||||
}
|
||||
}
|
||||
|
||||
# Argument-Verarbeitung
|
||||
COMMAND="${1:-}"
|
||||
case "$COMMAND" in
|
||||
networks)
|
||||
list_networks
|
||||
exit 0
|
||||
;;
|
||||
help | -h | --help)
|
||||
show_help
|
||||
exit 0
|
||||
;;
|
||||
inspect)
|
||||
NET="${2:-}"
|
||||
[[ -z "$NET" ]] && { echo "Fehler: Netzwerkname erforderlich. Verwendung: $0 inspect <docker-network-name>"; exit 1; }
|
||||
;;
|
||||
"")
|
||||
echo "Fehler: Befehl erforderlich. Verwendung: $0 networks|inspect|help"
|
||||
exit 1
|
||||
;;
|
||||
*)
|
||||
# Kompatibilität: Wenn erstes Argument kein bekannter Befehl ist, behandle es als Netzwerkname
|
||||
NET="$COMMAND"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Hauptlogik für die Inspektion eines Netzwerks (rest des originalen Scripts)
|
||||
|
||||
[[ -z "$NET" ]] && { echo "Fehler: Netzwerkname erforderlich. Verwendung: $0 <docker-network-name>"; exit 1; }
|
||||
|
||||
# 1) Netzwerk-ID und Bridge-Name separat holen (jeweils eigenes inspect)
|
||||
ID="$(docker network inspect "$NET" --format '{{.Id}}' 2>/dev/null || true)"
|
||||
|
||||
Reference in New Issue
Block a user