diff --git a/DockerStatus.py b/DockerStatus.py new file mode 100644 index 0000000..b1f25de --- /dev/null +++ b/DockerStatus.py @@ -0,0 +1,31 @@ +import subprocess +from tabulate import tabulate + +# Exécuter la commande docker ps et récupérer la sortie +command = "docker ps -a --format 'table {{.Names}} \t {{.Status}} \t {{.Size}}'" +output = subprocess.check_output(command, shell=True).decode().strip() + +# Convertir la sortie en liste de lignes +lines = output.split("\n") + +# Récupérer les en-têtes de colonnes +headers = lines[0].split("\t") + +# Récupérer les données des conteneurs +data = [line.split("\t") for line in lines[1:]] + +# Générer le tableau avec le cadre +table = tabulate(data, headers=headers, tablefmt="pipe") + +# Déterminer la largeur maximale pour le cadre +max_width = max(len(line) for line in table.split("\n")) + +# Créer le cadre +frame = f"╭{'─' * (max_width - 2)}╮\n" +frame += f"│{'DOCKER STATUS':^{max_width-2}}│\n" +frame += f"├{'─' * (max_width - 2)}┤\n" +frame += table + "\n" +frame += f"╰{'─' * (max_width - 2)}╯" + +# Afficher le cadre +print(frame) \ No newline at end of file