示例#1
0
def list_projects():
    """
    List docker compose projects
    """
    load_projects()
    active = [container['Labels']['com.docker.compose.project'] for container in containers()]
    return jsonify(projects=projects, active=active)
示例#2
0
def list_projects():
    """
    List docker compose projects
    """
    load_projects()
    active = [container['Labels']['com.docker.compose.project'] \
        if 'com.docker.compose.project' in container['Labels'] \
        else [] for container in containers()]
    return jsonify(projects=projects, active=active)
示例#3
0
def list_projects():
    """
    List docker compose projects
    """
    if("username" in session):
        YML_PATH = "./users/" + session["username"]

        projects = load_projects(YML_PATH)
        active = [container['Labels']['com.docker.compose.project'] \
            if 'com.docker.compose.project' in container['Labels'] \
            else [] for container in containers()]
        return jsonify(projects=projects, active=active)
    else:
        return "unauthorized", 403
示例#4
0
def ip_list_containers_enabled():
    list_container = []
    for container in containers():
        container_json = {}
        container_name_docker = container.get('Labels').get(
            'com.docker.compose.project')
        if not container_name_docker:
            continue
        container_json['finding'] = find_full_name(container_name_docker)
        ip = container.get("NetworkSettings"). \
                            get("Networks"). \
                            get("bridge"). \
                            get('IPAddress')
        ipv6 = container.get("NetworkSettings"). \
                             get("Networks"). \
                             get("bridge"). \
                             get('GlobalIPv6Address')
        container_json['name'] = container.get("Image")
        container_json['ip'] = ip
        container_json['ipv6'] = ipv6
        list_container.append(container_json)

    list_container = sorted(list_container, key=lambda k: k['name'])
    if "format" in request.args and request.args.get('format') == "json":
        return jsonify(containers=list_container)
    else:
        pretty = "Running containers\n"
        pretty += "{:20} {:35s} {:20s} {:20s}\n".format(
            "Finding", "Container", "Ip", "Ipv6")

        for container in list_container:
            pretty += "{:20} {:35s} {:20s} {:20s}\n".format(container.get('finding'), \
                                                     container.get('name'), \
                                                     container.get('ip'), \
                                                     container.get('ipv6'))
    return pretty