7 Docker Registry API、Docker Hub API 和 OAuth API

    xiaoxiao2021-12-14  20

    Docker 为了方便使用,提供了如下四种 API:

    Docker Registry APIDocker Hub APIDocker OAuth APIDocker Remote API

    本篇文章专门用来探讨 Docker Registry API、Docker Hub API 和 OAuth API。

    Docker API 主要是用于 Docker 官方 Index、Registry 和 Client 之间互通消息的 API,

    Docker remote API 则是用于控制主机 Docker 服务端的 API,等价于 dockers 命令行客户端。

    Docker Registry API

    Docker Registry API 是 为了简化镜像和仓库的存储而设计的 REST API,这些 API 并不涉及用户账户和用户认证。

    取出镜像层:

    GET /v1/images/(image_id)/layer

    插入镜像层:

    PUT /v1/images/(image_id)/layer

    检索镜像:

    GET /v1/images/(image_id)/json

    检索镜像的根镜像:

    GET /v1/images/(image_id)/ancestry

    获取指定库的所有标签:

    GET /v1/repositories/(namespace)/(repository)/tags

    获取指定库的指定标签:

    GET /v1/repositories/(namespace)/(repository)/tags/(tag*)

    删除标签:

    DELETE /v1/repositories/(namespace)/(repository)/tags/(tag*)

    registry 状态检查:

    GET /v1/_ping

    Docker Hub API

    Docker Hub API 是为 Docker Hub 设计的 REST API。Docker Hub(也就是 Index)是使用校验和公共 namespaces 的方式来存储账户信息、认证账户、进行账户授权。API同时也允许操作相关的用户仓库和 library 仓库。

    特殊的仓库的操作

    创建新的仓库

    PUT /v1/repositories/(repo_name)/

    删除现有仓库

    DELETE /v1/repositories/(repo_name)/

    更新仓库镜像

    PUT /v1/repositories/(repo_name)/images

    获取仓库镜像

    GET /v1/repositories/(repo_name)/images

    认证

    PUT /v1/repositories/(repo_name)/auth

    以上都是特殊仓库的操作,下面是对普通用户开放的 API。

    特殊的 library 仓库和用户仓库的区别在于 library 仓库是官方仓库,可以直接使用 ubuntu 这种名字做 repo 的名字,而译者就只能使用 qiuker521/ubuntu 作为 repo 的名字。

    普通用户的操作

    创建新的用户仓库

    PUT /v1/repositories/(namespace)/(repo_name)/

    删除现有仓库

    DELETE /v1/repositories/(namespace)/(repo_name)/

    更新镜像

    PUT /v1/repositories/(namespace)/(repo_name)/images

    获取镜像

    GET /v1/repositories/(namespace)/(repo_name)/images

    用户认证

    GET /v1/users

    创建新用户

    POST /v1/users

    更新用户信息

    PUT /v1/users/(username)/
    转载请注明原文地址: https://ju.6miu.com/read-969113.html

    最新回复(0)