【Docker教程系列】(七)Docker APIs

jopen 9年前發布 | 21K 次閱讀 Docker

縱觀我們的Docker教程系列,我們已經討論了很多顯著 Docker組件命令。在今天的系列文章中,我們深入挖掘Docker,發掘Docker APIs。

首先值得注意的是Docker提供以下的APIs,使得它更容易使用。這些API包含四個方面:

  • Docker Registry API
  • Docker Hub API
  • Docker OAuth API
  • Docker Remote API
  • </ul>
    具體到這篇文章,我們將討論Docker Registry API以及Docker Hub API。

    Docker Registry API

    Docker Registry API是 Docker Registry的REST API,它簡化了鏡像和庫的存儲。該API不能訪問用戶帳戶或它的授權。閱讀 Docker教程系列的第四章,以了解更多有關registry的類型。

    Extract image layer:

    取出鏡像層:
    GET /v1/images/(image_id)/layer



    Insert image layer:

    插入鏡像層:
    PUT /v1/images/(image_id)/layer

    Retrieve an image:

    檢索鏡像:
    GET /v1/images/(image_id)/json

    Retrieve roots of an image:

    檢索根鏡像:
    GET /v1/images/(image_id)/ancestry

    Obtain all tags or specific tag of a repository:

    獲取庫里所有的標簽或者指定標簽:
    GET /v1/repositories/(namespace)/(repository)/tags



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


    Delete a tag:

    刪除標簽:
    DELETE /v1/repositories/(namespace)/(repository)/tags/(tag*)


    Status check of registry:

    registry狀態檢查:
    GET /v1/_ping



    Docker Hub API

    Docker Hub API是Docker Hub的一個簡單的REST API。重申一次,請參考 Docker教程系列的第四章了解Docker Hub。Docker Hub 控制用戶帳戶,通過管理校驗認證以及公共命名空間。這個API還允許有關用戶和library庫的操作。

    首先,讓我們來探討特特殊的library庫(需要管理員權限)的命令:

    Library repository

    1. Create a new repository - 使用以下命令可以創建新的library庫:PUT /v1/repositories/(repo_name)/
    2. </ol>
      其中,repo_name是新的庫名字

      1. Delete existing repository - 刪除已存在的庫:DELETE /v1/repositories/(repo_name)/
      2. </ol>
        其中,repo_name是將要刪除的庫的名字

        1. Update repository images - 更新庫里的鏡像:
          PUT /v1/repositories/(repo_name)/images
        2. Get images from a repository - 從庫里面下載鏡像:
          GET /v1/repositories/(repo_name)/images
        3. Authorization - 使用token可以創建被授權的庫
          PUT /v1/repositories/(repo_name)/auth
        4. </ol>
          現在,讓我們列出用戶庫的命令。library庫與用戶庫命令之間的主要區別是命名空間的使用。

          User repository

          1. Create a new user repository - 創建用戶庫的命令:
            PUT /v1/repositories/(namespace)/(repo_name)/

            1. Delete existing repository - 刪除用戶庫:
              DELETE /v1/repositories/(namespace)/(repo_name)/
            2. Update images - 更新用戶庫鏡像
              PUT /v1/repositories/(namespace)/(repo_name)/images
            3. Get images from a repository - 從庫中下載鏡像
              GET /v1/repositories/(namespace)/(repo_name)/images
            4. Verify a user login - 驗證用戶登錄:
              GET /v1/users
            5. Create a new user - 添加新用戶:
              POST /v1/users
            6. Update user details - 更新用戶信息:
              PUT /v1/users/(username)/

            現在,我們已經給您介紹了有關Docker APIs終極之旅的第一站,第二站將是有關Docker OAuth以及Remote APIs,我們在 Docker教程系列的下一章見。
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!