docker 网络调用 registry 的 RESTful API

本文详细介绍了Docker Registry的基本操作,包括获取版本信息、拉取和推送镜像的具体流程及HTTP请求方法。针对每种操作提供了RESTful API的使用方式,并解释了请求返回的状态码含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 1.version

  • 2.pull

  • 3.push

VERSION

GET /V2/ 获取registry版本号,一般用以测试私有registry是否运行正确

200 支持V2接口
401 Unauthorized 未授权,需要授权才可访问
404 Not Found 不支持V2接口

PULL

GET /v2/IMAGE_NAME/manifests/IMAGE_TAG 获取镜像manifests文件

得到manifests文件,其格式如下:
{
   "name": IMAGE_NAME,
   "tag": IMAGE_TAG,
   "fsLayers": [
      {
         "blobSum": <digest>
      },
      ...
    ]
   ],
   "history": <v1 images>,
   "signature": <JWS>
}

HEAD /v2/IMAGE_NAME/manifests/IMAGE_TAG 获取镜像manifests文件信息

200 OK
Content-Length: <length of manifest>
Docker-Content-Digest: <digest>

PUSH

POST /v2/IMAGE_NAME/blobs/uploads/ 开始上传

202 Accepted
Location: /v2/IMAGE_NAME/blobs/uploads/<uuid>
Range: bytes=0-<offset>
Content-Length: 0
Docker-Upload-UUID: <uuid>

POST /v2/IMAGE_NAME/blobs/uploads/UUID 上传镜像层[注意uuid由请求上传后响应的header中给出]

GET /v2/IMAGE_NAME/blobs/uploads/UUID 获取上传进度

PUT /v2/IMAGE_NAME/blobs/uploads/UUID?digest=DIGEST 上传完成[上传结束必须调用此接口]

DELETE /v2/IMAGE_NAME/blobs/uploads/UUID 取消上传

PATCH /v2/IMAGE_NAME/blobs/uploads/UUID 分片上传

分片上传参数
Content-Length: <size of chunk>
Content-Range: <start of range>-<end of range>
Content-Type: application/octet-stream

<Layer Chunk Binary Data>

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值