import paramiko
s = paramiko.SSHClient()
s.load_system_host_keys()
# 密码列表
list1 = ['521999']
for password in list1:
    try:
        s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        # 链接宿主机,172.17.0.1为docker虚拟网桥地址,默认为172.17.0.1,可更改
        s.connect("172.17.0.1",22,"root",password,timeout=5)
        stdin,stdout,stderr = s.exec_command("docker info | grep 'Node Address' | awk '{print $NF}'")
        ip = stdout.read().decode("utf-8")
        if ip:
            while True:
              print(ip)
    except:
        pass

通过虚拟网桥ip用ssh链接宿主机,执行docker info命令对docker宿主机ip进行获取。

前提需要:

1.root密码,

2.服务器的docker虚拟网桥(172.17.0.1)未更改,否则也需要配置ip。

即ssh链接所需要的ip(虚拟网桥172.17.0.1),用户名(root),密码

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐