docker hub是Docker官方維護的一個公共倉庫,其中已經包括了數量超過2650000的映像;大部分需求都可以透過在Docker Hub中直接下載映像來實現。
本文操作環境:centOS6.8系統、Docker 18.09.x版、Dell G3電腦。
什麼是docker hub?
目前 Docker 官方維護了一個公共倉庫 Docker Hub,其中已經包括了數量超過 2,650,000 的映像。大部分需求都可以透過在 Docker Hub 中直接下載映像來實現。
Docker Hub網址:https://hub.docker.com/
登入
可以透過執行docker login 指令互動式的輸入用戶名及密碼來完成在命令列介面登入Docker Hub。
你可以透過 docker logout退出登入。
拉取映像
你可以透過 docker search 指令來尋找官方倉庫中的映像,並利用 docker pull 指令將它下載到本機。
例如以centos 為關鍵字進行搜尋:
$ docker search centos NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 6449 [OK] ansible/centos7-ansible Ansible on Centos7 132 [OK] consol/centos-xfce-vnc Centos container with "headless" VNC session… 126 [OK] jdeathe/centos-ssh OpenSSH / Supervisor / EPEL/IUS/SCL Repos - … 117 [OK] centos/systemd systemd enabled base container. 96 [OK]
可以看到傳回了許多包含關鍵字的鏡像,其中包括鏡像名字、描述、收藏數(表示該鏡像的受關注程度)、是否官方創建(OFFICIAL)、是否自動建置(AUTOMATED)。
根據是否為官方提供,可將鏡像分為兩類。
一種是類似 centos 這樣的鏡像,被稱為基礎鏡像或根鏡像。這些基礎映像由 Docker 公司建立、驗證、支援、提供。這樣的鏡像往往使用單字作為名字。
還有一種類型,例如 ansible/centos7-ansible 映像,它是由 Docker Hub 的註冊用戶創建並維護的,往往帶有用戶名稱前綴。可以透過前綴 username/ 來指定使用某個使用者提供的鏡像,例如 ansible 使用者。
另外,在尋找的時候透過 --filter=stars=N 參數可以指定只顯示收藏數量為 N 以上的鏡像。
下載官方 centos 映像檔到本地。
$ docker pull centos Using default tag: latest latest: Pulling from library/centos 7a0437f04f83: Pull complete Digest: sha256:5528e8b1b1719d34604c87e11dcd1c0a20bedf46e83b5632cdeac91b8c04efc1 Status: Downloaded newer image for centos:latest docker.io/library/centos:latest
推送映像
使用者也可以登入後透過 docker push 指令來將自己的映像推送到 Docker Hub。
以下指令中的 username 請替換為你的 Docker 帳號使用者名稱。
$ docker tag ubuntu:18.04 username/ubuntu:18.04 $ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu 18.04 275d79972a86 6 days ago 94.6MB username/ubuntu 18.04 275d79972a86 6 days ago 94.6MB $ docker push username/ubuntu:18.04 $ docker search username NAME DESCRIPTION STARS OFFICIAL AUTOMATED username/ubuntu
自動建置(2021 年6 月18 日之後,此功能僅限付費用戶使用。)
推薦學習:《docker影片教學》
以上是什麼是docker hub的詳細內容。更多資訊請關注PHP中文網其他相關文章!