docker hub上镜像手动下载_Docker 下载镜像
本文中,我們將需要學習 Docker 如何下載鏡像?
一、前言
大家都知道,鏡像是 Docker 三大核心概念中最重要的。如果我們想要在本地運行容器,就必須保證本地存在對應的鏡像。所以,第一步,我們需要下載鏡像。當我們嘗試下載鏡像時,Docker 會嘗試先從默認的鏡像倉庫(默認使用 Docker Hub 公共倉庫)去下載,當然了,用戶也可以自定義配置想要下載的鏡像倉庫。
二、下載鏡像
鏡像是運行容器的前提,我們可以使用 docker pull [IMAGE_NAME]:[TAG]命令來下載鏡像,其中 IMAGE_NAME 表示的是鏡像的名稱,而 TAG 是鏡像的標簽,也就是說我們需要通過 “鏡像 + 標簽” 的方式來下載鏡像。
注意:您也可以不顯式地指定 TAG, 它會默認下載 latest 標簽,也就是下載倉庫中最新版本的鏡像。這里并不推薦您下載 latest 標簽,因為該鏡像的內(nèi)容會跟蹤鏡像的最新版本,并隨之變化,所以它是不穩(wěn)定的。在生產(chǎn)環(huán)境中,可能會出現(xiàn)莫名其妙的 bug, 推薦您最好還是顯示的指定具體的 TAG。
舉個例子,如我們想要下載一個 Mysql 5.7 鏡像,可以通過命令來下載:
docker pull mysql:5.7
會看到控制臺輸出內(nèi)容如下:
注意:由于官方 DockerHub 倉庫服務器在國外,下載速度較慢,所以我將倉庫的地址更改成了國內(nèi)的 docker.io 的鏡像倉庫,所以在上圖中,鏡像前面會有 docker.io 出現(xiàn)。
當有 Downloaded 字符串輸出的時候,說明下載成功了!!
二、驗證
讓我們來驗證一下,本地是否存在 Mysql5.7 的鏡像,運行命令:
docker images
可以看到本地的確存在該鏡像,確實是下載成功了!
三、下載鏡像相關細節(jié)
再說說上面下載鏡像的過程:
通過下載過程,可以看到,一個鏡像一般是由多個層(layer) 組成,類似 f7e2b70d04ae這樣的串表示層的唯一 ID。
PS: 實際上完整的 ID 包括了 256 個 bit, 64 個十六進制字符組成的。
您可能會想,如果多個不同的鏡像中,同時包含了同一個層(layer),這樣重復下載,豈不是導致了存儲空間的浪費么?實際上,Docker 并不會這么傻會去下載重復的層(layer),Docker 在下載之前,會去檢測本地是否會有同樣 ID 的層,如果本地已經(jīng)存在了,就直接使用本地的就好了。
另一個問題,不同倉庫中,可能也會存在鏡像重名的情況發(fā)生, 這種情況咋辦?
嚴格意義上,我們在使用 docker pull 命令時,還需要在鏡像前面指定倉庫地址(Registry), 如果不指定,則 Docker 會使用您默認配置的倉庫地址。例如上面,由于我配置的是國內(nèi) docker.io 的倉庫地址,我在 pull 的時候,docker 會默認為我加上 docker.io/library 的前綴。
如:當我執(zhí)行 docker pull mysql:5.7 命令時,實際上相當于 docker pull docker.io/mysql:5.7,如果您未自定義配置倉庫,則默認在下載的時候,會在鏡像前面加上 DockerHub 的地址。
Docker 通過前綴地址的不同,來保證不同倉庫中,重名鏡像的唯一性。
四、PULL 子命令
命令行中輸入:
docker pull --help
會得到如下信息:
[root@iZbp1j8y1bab0djl9gdp33Z ~]# docker pull --help
Usage: docker pull [OPTIONS] NAME[:TAG|@DIGEST]
Pull an image or a repository from a registry
Options:
-a, --all-tags Download all tagged images in the repository
--disable-content-trust Skip image verification (default true)
--help Print usage
我們可以看到主要支持的子命令有:
-a, --all-tags=true|false: 是否獲取倉庫中所有鏡像,默認為否;
--disable-content-trust: 跳過鏡像內(nèi)容的校驗,默認為 true;
五、總結
本文中,我們著重了解了 Docker 中如何下載鏡像,下載鏡像相關的細節(jié),以及 Docker pull 相關子命令。祝您學習愉快!
Docker 下載鏡像慢的問題解決方法
讓你火箭般的速度下載docker鏡像! 的冷漠度 百家號17-11-1713:09 因為有墻的原因所以在國內(nèi)下載docker鏡像的速度非常慢,有時候是幾kb每秒,那個蛋疼的等待,真是誰等誰知道!下面我 ...
docker下載鏡像太慢的解決方案
參考鏈接:https://blog.csdn.net/weixin_43569697/article/details/89279225 docker下載鏡像卡死或太慢找了網(wǎng)上很多方法,使用鏡像中國也是 ...
國內(nèi)Docker下載鏡像提速方法之一
眾所周知,Docker Hub并沒有在國內(nèi)部署服務器或者使用國內(nèi)的CDN服務,因此在國內(nèi)特殊的網(wǎng)絡環(huán)境下,鏡像下載十分耗時.為了克服跨洋網(wǎng)絡延遲,能夠快速高效地下載Docker鏡像,我采用了DaoCl ...
docker下載鏡像
注意:必須先搜索鏡像,否則有時候無法下載 Docker下載Redis鏡像并運行容器 .搜索查找鏡像 docker search redis .下載鏡像 docker pull redis:latest ...
Docker下載鏡像并創(chuàng)建容器運行
在linux系統(tǒng)中安裝完成docker后,我們開始進行docker的鏡像.容器的使用. 在使用docker時,首先要明確的兩個概念:image(鏡像) 與? container (容器) image: ...
Docker下載鏡像出現(xiàn)failed to register layer: symlink....問題
在用Docker下載RabbitMQ的時候出現(xiàn)如下問題 個人解決方案:重啟Docker. 若重啟還是無法解決問題,可以先關閉Docker systemctl stop docker 然后把已下載的相關 ...
docker 下載鏡像 ( 以 mysql為例 )
一.官方鏡像倉庫 https://hub.docker.com/explore/ 二.常用操作 三.使用命令查看 mysql [root@localhost fw]# docker search my ...
Docker下載鏡像太慢問題
我在linux上安裝了Docker,docker pull 了一個nginx鏡像,真他媽是太慢了用了1-2個小時才下載完成. 在網(wǎng)上找到了優(yōu)化方法,那真是速度一下就起飛了,其實只要配置一下拉取的doc ...
docker下載鏡像received unexpected Http status:500 Internal Server Error
解決辦法 1.就是網(wǎng)上說的 關閉selLinue ,但是對我就沒用 2.就是不使用鏡像加速 ,但是出現(xiàn)連接超時 3.就是加上具體版本號 結果就成功了 [root@localhost ~]# docke ...
隨機推薦
myBatis獲取批量插入數(shù)據(jù)的主鍵id
在myBatis中獲取剛剛插入的數(shù)據(jù)的主鍵id是比較容易的 , 一般來說下面的一句話就可以搞定了 , 網(wǎng)上也有很多相關資料去查. @Options(useGeneratedKeys = true, k ...
SQL千萬級數(shù)據(jù)設計和優(yōu)化
1. 數(shù)據(jù)太多.放在一個表肯定不行. 比如月周期表.一個月1000萬,一年就1.2億,如此累計下去肯定不行的.所以都是基于一個周期數(shù)據(jù)一個表.甚至一個周期數(shù)據(jù)就要分幾個分表.主要是考慮實際的數(shù)據(jù)量而定 ...
【調(diào)侃】IOC前世今生 工廠模式 反射 依賴倒置
http://www.cnblogs.com/showjan/p/3950989.html
搜索廣告與廣告網(wǎng)絡Demand技術-流式計算平臺
流式計算平臺-Storm 我們以Storm為例來看流式計算的功能是什么. 下面內(nèi)容引用自大圓的博客.在Storm中,一個實時應用的計算任務被打包作為Topology發(fā)布,這同Hadoop的MapRed ...
為linux系統(tǒng)實現(xiàn)回收站
在linux系統(tǒng)中,經(jīng)常采用"rm *"或"rm -r *"操作刪除一下文件,但是有時某些文件并不是我們想要刪除的,但是已經(jīng)被刪除.很多時候都是悲劇的,數(shù)據(jù)是難 ...
[轉(zhuǎn)]SpringMVC+ Mybatis 配置多數(shù)據(jù)源 + 手動切換數(shù)據(jù)源
正確可行的解決方法:使用Spring提供的AbstractRoutingDataSource類來根據(jù)請求路由到不同的數(shù)據(jù)源.具體做法是先設置兩個不同的dataSource代表不同的數(shù)據(jù)源,再建一個總的 ...
Bjarne Stroustrup announces C++ Core Guidelines
This morning in his opening keynote at CppCon, Bjarne Stroustrup announced the C++ Core Guidelines ( ...
DevOps簡介
DevOps 是一個完整的面向IT運維的工作流,以 IT 自動化以及持續(xù)集成(CI).持續(xù)部署(CD)為基礎,來優(yōu)化程式開發(fā).測試.系統(tǒng)運維等所有環(huán)節(jié). DevOps的概念 DevOps一詞的來自于D ...
醫(yī)學圖像之DICOM格式解析
最近導師給安排了新任務,由于剛進入實驗室,對于醫(yī)學圖像這一塊還一知半解,所以就想分享一下有關醫(yī)學常見影像的學習(尤其是dicom后綴的圖像文件),歡迎大家一起交流. 目錄 1.醫(yī)學影像學的介紹 2.D ...
tableView--iOS11適配和iPhoneX適配
1.UIScrollView及其子類在IOS 11之前的版本UI顯示完全正常,但是在IOS 11上面會顯示奇葩的界面. (1)先看一下UITablevIew. 原本在VC里面的automaticall ...
總結
以上是生活随笔為你收集整理的docker hub上镜像手动下载_Docker 下载镜像的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring源码分析2本最高清带书目PD
- 下一篇: Linux系统下UDP发送和接收广播消息