v1.1.0
This commit is contained in:
57
README.md
57
README.md
@@ -1,12 +1,15 @@
|
||||
# Dockernet Inspector
|
||||
|
||||
Ein Bash-Script zur Analyse und Anzeige von Details zu Docker-Netzwerken.
|
||||
Ein Bash-Script zur Verwaltung und Analyse von Docker-Netzwerken.
|
||||
|
||||
## 📋 Beschreibung
|
||||
|
||||
**Dockernet Inspector** ist ein praktisches Bash-Script, das detaillierte Informationen über Docker-Netzwerke anzeigt. Es ermöglicht Administratoren und Entwicklern einen schnellen Überblick über die Konfiguration und den Status eines Docker-Netzwerks zu erhalten.
|
||||
**Dockernet Inspector** ist ein praktisches Bash-Script, das Administratoren und Entwicklern die Verwaltung und Analyse von Docker-Netzwerken erleichtert. Das Script bietet zwei Hauptfunktionen:
|
||||
|
||||
Das Script zeigt folgende Informationen an:
|
||||
1. **Alle Netzwerke auflisten** - Anzeige aller verfügbaren Docker-Netzwerke mit ihren Treibern
|
||||
2. **Netzwerk-Details inspizieren** - Detaillierte Informationen zu einem spezifischen Netzwerk
|
||||
|
||||
Das Script zeigt folgende Informationen beim Inspizieren an:
|
||||
- **Netzwerk-Driver** (bridge, overlay, host, etc.)
|
||||
- **Bridge-Interface-Name** auf dem Host-System
|
||||
- **Subnet und Gateway** des Netzwerks
|
||||
@@ -31,22 +34,52 @@ chmod +x dockernet-inspector.v1.sh
|
||||
### Grundlegende Syntax
|
||||
|
||||
```bash
|
||||
bash ./dockernet-inspector.v1.sh <docker-network-name>
|
||||
bash ./dockernet-inspector.v1.sh [BEFEHL] [OPTIONS]
|
||||
```
|
||||
|
||||
### Verfügbare Befehle
|
||||
|
||||
| Befehl | Beschreibung |
|
||||
|--------|-------------|
|
||||
| `networks` | Listet alle verfügbaren Docker-Netzwerke auf |
|
||||
| `inspect <netzwerk>` | Zeigt detaillierte Informationen zu einem Netzwerk |
|
||||
| `<netzwerk>` | Alias für `inspect <netzwerk>` (Rückwärtskompatibilität) |
|
||||
| `help`, `-h`, `--help` | Zeigt die Hilfe an |
|
||||
|
||||
### Beispiele
|
||||
|
||||
**Beispiel 1: Standard Bridge-Netzwerk analysieren**
|
||||
**Beispiel 1: Alle Docker-Netzwerke auflisten**
|
||||
```bash
|
||||
bash ./dockernet-inspector.v1.sh bridge
|
||||
bash ./dockernet-inspector.v1.sh networks
|
||||
```
|
||||
|
||||
**Beispiel 2: Benutzerdefiniertes Netzwerk analysieren**
|
||||
**Beispiel 2: Standard Bridge-Netzwerk analysieren (mit inspect)**
|
||||
```bash
|
||||
bash ./dockernet-inspector.v1.sh inspect bridge
|
||||
```
|
||||
|
||||
**Beispiel 3: Benutzerdefiniertes Netzwerk analysieren (Schnellform)**
|
||||
```bash
|
||||
bash ./dockernet-inspector.v1.sh my-custom-network
|
||||
```
|
||||
|
||||
### Beispiel-Ausgabe
|
||||
**Beispiel 4: Hilfe anzeigen**
|
||||
```bash
|
||||
bash ./dockernet-inspector.v1.sh help
|
||||
```
|
||||
|
||||
### Beispiel-Ausgabe für `networks`
|
||||
|
||||
```
|
||||
Verfügbare Docker Netzwerke:
|
||||
==============================
|
||||
ID NAME DRIVER SCOPE
|
||||
abcd1234efgh5678ijkl9012 bridge bridge local
|
||||
mnop4567qrst8901uvwx2345 host host local
|
||||
yzab3456cdef7890ghij1234 mynet bridge local
|
||||
```
|
||||
|
||||
### Beispiel-Ausgabe für `inspect`
|
||||
|
||||
```
|
||||
Docker-Netzwerk : my-network
|
||||
@@ -81,8 +114,10 @@ TX bytes/packets : 654321 / 456
|
||||
|
||||
Das Script gibt folgende Fehlermeldungen aus:
|
||||
|
||||
- **Keine Netzwerk-Angabe:** `Usage: ./dockernet-inspector.v1.sh <docker-network-name>`
|
||||
- **Kein Befehl angegeben:** `Fehler: Befehl erforderlich. Verwendung: $0 networks|inspect|help`
|
||||
- **Keine Netzwerk-Angabe beim Inspizieren:** `Fehler: Netzwerkname erforderlich. Verwendung: $0 inspect <docker-network-name>`
|
||||
- **Netzwerk nicht gefunden:** `Fehler: Netzwerk '<name>' nicht gefunden.`
|
||||
- **Docker Netzwerke konnten nicht abgerufen werden:** `Fehler: Docker Netzwerke konnten nicht abgerufen werden.`
|
||||
- **Interface existiert nicht:** `WARN: Interface <name> existiert (noch) nicht auf dem Host.`
|
||||
|
||||
## 🛠️ Technische Details
|
||||
@@ -108,9 +143,9 @@ Beiträge, Issues und Feature-Anfragen sind willkommen!
|
||||
|
||||
## 📅 Version
|
||||
|
||||
- **Version:** 1.0.0
|
||||
- **Version:** 1.1.0
|
||||
- **Datum:** 17.02.2026
|
||||
- **Modifikation:** Initial Release
|
||||
- **Modifikation:** Funktion zur Auflistung aller Docker-Netzwerke hinzugefügt
|
||||
|
||||
<p align="center">
|
||||
<img src="https://assets.techniverse.net/f1/git/graphics/gray0-catonline.svg" alt="">
|
||||
|
||||
@@ -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