Docker拉取鏡像的完整步驟
1. docker pull 拉取鏡像
使用 $ docker pull {IMAGE_NAME}
拉取鏡像時,有兩種情況:
- IMAGE_NAME 第一個斜杠之前有域名標識
Docker 會將 IMAGE_NAME 識別為帶域名的鏡像。例如,myregistry.io/space1/image1:latest ,Docker 會去 myregistry.io 指向的服務(wù)器請求鏡像數(shù)據(jù)。一個 Docker 鏡像分為很多層,如果本地存在該層,則不會再次拉取。
- IMAGE_NAME 第一個斜杠之前沒有域名標識
Docker 會將 IMAGE_NAME 拼接為 docker.io/IMAGE_NAME 請求鏡像數(shù)據(jù)。事實上,$ docker pull docker.io/shaowenchen/images1 與 $ docker pull shaowenchen/images1 同等效果。對于 DockerHub 提供的鏡像,國內(nèi)訪問速度較慢,可以通過添加鏡像源的方式加速。
在拉取鏡像時,可能會有兩個問題:
1,拉取非公開鏡像,提示登錄
直接使用 docker login 登錄即可,在非交互場景,可以執(zhí)行:
$ echo "$DOCKER_PASSWORD" | docker login $REGISTRY -u "$DOCKER_USERNAME" --password-stdin
2,鏡像倉庫證書錯誤
如果 IMAGE_NAME 中指定了鏡像倉庫服務(wù)器,但服務(wù)器并不提供合法的 https 服務(wù),那么需要進行如下配置:
在 /etc/docker/daemon.json 文件中,增加:
{ "insecure-registries": ["core.harbor.chenshaowen.com:5000"] }
重啟 Docker 生效。
2. 修改鏡像源,加速鏡像拉取
- 修改 Docker 的配置文件 daemon.json
在 /etc/docker/daemon.json 文件中,增加鏡像源
{ "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] }
- 修改 Docker 的 systemd 參數(shù)
編輯文件 /usr/lib/systemd/system/docker.service ,在 ExecStart 所在行,增加 registry-mirror 參數(shù)。
ExecStart=... --registry-mirror=https://docker.mirrors.ustc.edu.cn
重啟 Docker 生效。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
docker容器環(huán)境安裝及鏡像基礎(chǔ)操作
容器是一種輕量級虛擬化技術(shù),能夠快速構(gòu)建業(yè)務(wù)環(huán)境并便于業(yè)務(wù)遷移,解決兼容性問題,這篇文章主要介紹了docker容器環(huán)境安裝及鏡像基礎(chǔ)操作,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-09-09CentOS7 Nvidia Docker環(huán)境搭建
本篇文章主要介紹了CentOS7 Nvidia Docker環(huán)境搭建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02Docker啟動PostgreSQL時創(chuàng)建多個數(shù)據(jù)庫的解決方案
這篇文章主要介紹了Docker啟動PostgreSQL時創(chuàng)建多個數(shù)據(jù)庫的解決方案,重點給大家介紹如何把shell/sql腳本放入/docker-entrypoint-initdb.d/目錄中,讓容器啟動的時候自動執(zhí)行創(chuàng)建2021-06-06