如何使用 DockerHub
在這個 Docker 系列的最後一篇文章中,我們將講述在 DockerHub 上使用和釋出映象。
在前面的文章中,我們瞭解到了基本的 Docker 術語,在 Linux 桌面、MacOS 和 Windows上 如何安裝 Docker,如何建立容器映象 並且在系統上執行它們。在本系列的最後一篇文章中,我們將討論如何使用 DockerHub 中的映象以及將自己的映象釋出到 DockerHub。
首先:什麼是 DockerHub 以及為什麼它很重要?DockerHub 是一個由 Docker 公司執行和管理的基於雲的儲存庫。它是一個線上儲存庫,Docker 映象可以由其他使用者釋出和使用。有兩種庫:公共儲存庫和私有儲存庫。如果你是一家公司,你可以在你自己的組織內擁有一個私有儲存庫,而公共映象可以被任何人使用。
你也可以使用公開發布的官方 Docker 映象。我使用了很多這樣的映象,包括我的試驗 WordPress 環境、KDE plasma 應用程式等等。雖然我們上次學習瞭如何建立自己的 Docker 映象,但你不必這樣做。DockerHub 上釋出了數千映象供你使用。DockerHub 作為預設儲存庫硬編碼到 Docker 中,所以當你對任何映象執行 docker pull
命令時,它將從 DockerHub 下載。
從 Docker Hub 下載映象並在本地執行
開始請檢視本系列的前幾篇文章,以便繼續。然後,一旦 Docker 在你的系統上執行,你就可以開啟終端並執行:
$ docker images
該命令將顯示當前系統上所有的 docker 映象。假設你想在本地機器上部署 Ubuntu,你可能會:
$ docker pull ubuntu
如果你的系統上已經存在 Ubuntu 映象,那麼該命令會自動將該系統更新到最新版本。因此,如果你想要更新現有的映象,只需執行 docker pull
命令,易如反掌。這就像 apt-get update
一樣,沒有任何的混亂和麻煩。
你已經知道了如何執行映象:
$ docker run -it <image name>
$ docker run -it ubuntu
命令提示符應該變為如下內容:
root@1b3ec4621737:/#
現在你可以執行任何屬於 Ubuntu 的命令和實用程式,這些都被包含在內而且安全。你可以在 Ubuntu 上執行你想要的所有實驗和測試。一旦你完成了測試,你就可以銷燬映象並下載一個新的。在虛擬機器中不存在系統開銷。
你可以透過執行 exit 命令退出該容器:
$ exit
現在假設你想在系統上安裝 Nginx,執行 search
命令來找到需要的映象:
$ docker search nginx
正如你所看到的,DockerHub 上有很多 Nginx 映象。為什麼?因為任何人都可以釋出映象,各種映象針對不同的專案進行了最佳化,因此你可以選擇合適的映象。你只需要為你的需求安裝合適的映象。
假設你想要拉取 Bitnami 的 Nginx 映象:
$ docker pull bitnami/nginx
現在執行:
$ docker run -it bitnami/nginx
如何釋出映象到 Docker Hub?
在此之前,我們學習瞭如何建立 Docker 映象,我們可以輕鬆地將該映象釋出到 DockerHub 中。首先,你需要登入 DockerHub,如果沒有賬戶,請 建立賬戶。然後,你可以開啟終端應用,登入:
$ docker login --username=<USERNAME>
將 “” 替換為你自己的 Docker Hub 使用者名稱。我這裡是 arnieswap:
$ docker login --username=arnieswap
輸入密碼,你就登入了。現在執行 docker images
命令來獲取你上次建立的映象的 ID。
$ docker images
現在,假設你希望將映象 ng
推送到 DockerHub,首先,我們需要標記該映象(瞭解更多關於標記的資訊):
$ docker tag e7083fd898c7 arnieswap/my_repo:testing
現在推送映象:
$ docker push arnieswap/my_repo
推送指向的是 docker.io/arnieswap/my_repo 倉庫:
12628b20827e: Pushed
8600ee70176b: Mounted from library/ubuntu
2bbb3cec611d: Mounted from library/ubuntu
d2bb1fc88136: Mounted from library/ubuntu
a6a01ad8b53f: Mounted from library/ubuntu
833649a3e04c: Mounted from library/ubuntu
testing: digest: sha256:286cb866f34a2aa85c9fd810ac2cedd87699c02731db1b8ca1cfad16ef17c146 size: 1569
哦耶!你的映象正在上傳。一旦完成,開啟 DockerHub,登入到你的賬戶,你就能看到你的第一個 Docker 映象。現在任何人都可以部署你的映象。這是開發軟體和釋出軟體最簡單,最快速的方式。無論你何時更新映象,使用者都可以簡單地執行:
$ docker run arnieswap/my_repo
現在你知道為什麼人們喜歡 Docker 容器了。它解決了傳統工作負載所面臨的許多問題,並允許你在任何時候開發、測試和部署應用程式。透過遵循本系列中的步驟,你自己可以嘗試以下。
via: https://www.linux.com/blog/learn/intro-to-linux/2018/1/how-use-dockerhub
作者:Swapnil Bhartiya 譯者:MjSeven 校對:wxy
相關文章
- 如何給Dockerhub使用者上傳頭像Docker
- docker 打包映象推送至dockerhubDocker
- 突破 DockerHub 限制,全映象加速服務Docker
- dockerhub連不上怎麼辦?如何從一臺電腦搬到另一臺。Docker
- Docker邁入雲(DockerHub)端(Docker引擎)時代Docker
- Docker入門系列之三:如何將dockerfile製作好的映象釋出到Dockerhub上Docker
- Docker-映象釋出到Dockerhub和阿里雲Docker阿里
- docker製作自己的映象並上傳dockerhubDocker
- 使用Maven外掛構建SpringBoot專案,生成Docker映象push到DockerHub上MavenSpring BootDocker
- 有人說DockerHub上三成的映象包含漏洞?扯嗎不是?Docker
- DockerHub再現百萬下載量黑產映象,小心你的容器被挖礦Docker
- 如何使用GitHub?Github
- 如何使用MyBatisMyBatis
- 如何使用 ulimitMIT
- 如何使用反射反射
- MQTT如何使用MQQT
- 如何使用 Service 模式模式
- PostMan該如何使用Postman
- 如何使用go文件Go
- WebBits庫如何使用Web
- 如何使用htmltab庫HTML
- 如何使用grequests庫
- 如何使用Guzzle庫
- 如何使用RCurl庫
- 如何使用 id 命令?
- MySql escape如何使用MySql
- 事件代理如何使用?事件
- 如何使用 date 命令
- 如何使用nodejsNodeJS
- [譯] 如何使用 Rails HelperAI
- 如何使用 Repository 模式模式
- 在django如何使用中文Django
- 如何高效的使用 GitGit
- MySql如何使用索引(二)MySql索引
- MySql如何使用索引(一)MySql索引
- 如何使用 Redis 快取Redis快取
- python 類如何使用Python
- mac如何使用pythonMacPython