import paramiko import json import sys import io if sys.platform == 'win32': sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace') client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect('161.97.93.156', username='carlos', password='Innova1978+*?', timeout=10) stdin, stdout, stderr = client.exec_command("docker ps --format '{{.Names}}'") all_names = [n.strip() for n in stdout.read().decode('utf-8').splitlines() if n.strip()] drip_names = [n for n in all_names if "bfmno" in n or "drip" in n] print("Matching containers:", drip_names) for container_id in drip_names: stdin, stdout, stderr = client.exec_command(f"docker inspect {container_id}") raw = stdout.read().decode('utf-8') if not raw.strip(): continue info = json.loads(raw) labels = info[0].get("Config", {}).get("Labels", {}) print(f"\n=== LABELS OF {container_id} ===") for k, v in labels.items(): if "traefik" in k or "coolify" in k: print(f" {k}: {v}") print("\n=== CHECKING IF dripzone.almeira.com.co HAS ANY ROUTER ===") stdin, stdout, stderr = client.exec_command("docker ps --filter 'label=traefik.enable=true' --format '{{.Names}}'") print("Traefik containers:", stdout.read().decode('utf-8').strip()) client.close()