格式化输出docker registry中所有的tag以及tag链接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了格式化输出docker registry中所有的tag以及tag链接相关的知识,希望对你有一定的参考价值。

最近在研究kubernetes,docker仓库用到的比较多,每次查询都得curl好麻烦,所以才写了这个。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
author = ‘Perling‘
time = ‘2016/11/10‘
"""

import urllib2
import json

registry="172.31.14.229:5000"
registry_url = "http://%s"%registry


def http_get(url):
    req = urllib2.Request(url)
    req.add_header("Content-Type","application/json-rpc")
    resp = urllib2.urlopen(req)
    resp_json = json.loads(resp.read())
    return resp_json

def get_repository_list():
    data = http_get(registry_url+"/v2/_catalog")
    repository_list = data[‘repositories‘]
    return repository_list

def get_repository_tags(repository):
    data = http_get("%s/v2/%s/tags/list"%(registry_url,repository))
    tags = data[‘tags‘]
    return tags

def get_all_repository_tags():
    data = {}
    for repositoary in get_repository_list():
        data[repositoary]=get_repository_tags(repositoary)
    return data

if __name__ == ‘__main__‘:
    data = get_all_repository_tags()
    print "/"
    print "|"
    for key in data:
        print "|--- %s"%key
        for tag in data[key]:
            print "|    |--- %-15s %s/%s:%s"%(tag,registry,key,tag)


本文出自 “perling” 博客,请务必保留此出处http://zhaolin.blog.51cto.com/9397923/1871550

以上是关于格式化输出docker registry中所有的tag以及tag链接的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Docker Registry HTTP API V2 获取 docker 注册表中所有存储库的列表?

Docker私有仓库之registry与Cgroup资源控制

Docker私有仓库之registry与Cgroup资源控制

Docker私有仓库之registry与Cgroup资源控制

使用docker Registry快速搭建私有镜像仓库

docker网络管理与本地私有Registry创建部署