Esempio n. 1
0
def configure_docker_hostnames_to_dnsmasq():
    hostname2ip_map = {}
    cli = get_client()
    try:
        containers = cli.containers()
    except docker.client.APIError as e:
        logger.error("error when doing docker ps.")
        return

    for container in containers:
        try:
            container_info = cli.inspect_container(container)
            hostname_ip = utility.parse_hostname_ip(container_info)
            hostname2ip_map[hostname_ip[0]] = hostname_ip[1]
        except docker.client.APIError as e:
            logger.error("error when inspecting container:" + container["Id"])

    GangerDns.generate_dnsmasq_host(hostname2ip_map)
    GangerDns.restart_dns_masq()