Flux7 Docker 系列教程(七):Docker API

本系列教程翻譯自 Flux7 Docker Tutorial Series,系列共有九篇,本文譯自第七篇 Part 7: Ultimate Guide for Docker APIs
該系列全部文章將參考其餘學習資料翻譯,也會加入本身的學習做爲部分註解。若有錯誤,歡迎指正。docker

在之前的系列教程中,咱們已經探討了 Docker 中不少很重要的組件,本篇文章咱們深刻 Docker:探討 Docker API。json

值得注意的是,Docker 爲了方便使用,提供了以下四種 API:ubuntu

  1. Docker Registry API
  2. Docker Hub API
  3. Docker OAuth API
  4. Docker Remote API

本篇文章專門用來探討 Docker Registry API、Docker Hub API 和 OAuth API。api

Docker Registry API

Docker Registry API 爲了簡化鏡像和倉庫的存儲而設計的 REST API。這些 API 並不涉及用戶帳戶和用戶認證。架構

取出鏡像層:ide

GET /v1/images/(image_id)/layer

clipboard.png

插入鏡像層:學習

PUT /v1/images/(image_id)/layer

clipboard.png

檢索鏡像:ui

GET /v1/images/(image_id)/json

檢索鏡像的根鏡像:spa

GET /v1/images/(image_id)/ancestry

獲取指定庫的全部標籤:翻譯

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

clipboard.png

獲取指定庫的指定標籤:

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

刪除標籤:

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

clipboard.png

registry 狀態檢查:

GET /v1/_ping

clipboard.png

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)/

clipboard.png

更新鏡像

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

clipboard.png

獲取鏡像

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

clipboard.png

用戶認證

GET /v1/users

clipboard.png

建立新用戶

POST /v1/users

clipboard.png

更新用戶信息

PUT /v1/users/(username)/

總結

Docker API 已經講了三個,並且都是 Docker Hub 架構相關的 API。下面兩篇文章將專門講 Docker Remote API,操做宿主機 Docker 服務端的 API。

相關文章
相關標籤/搜索