1. docker pull 拉取鏡像
使用 $ docker pull {IMAGE_NAME}
拉取鏡像時(shí),有兩種情況:
- IMAGE_NAME 第一個(gè)斜杠之前有域名標(biāo)識(shí)
Docker 會(huì)將 IMAGE_NAME 識(shí)別為帶域名的鏡像。例如,myregistry.io/space1/image1:latest ,Docker 會(huì)去 myregistry.io 指向的服務(wù)器請(qǐng)求鏡像數(shù)據(jù)。一個(gè) Docker 鏡像分為很多層,如果本地存在該層,則不會(huì)再次拉取。
- IMAGE_NAME 第一個(gè)斜杠之前沒(méi)有域名標(biāo)識(shí)
Docker 會(huì)將 IMAGE_NAME 拼接為 docker.io/IMAGE_NAME 請(qǐng)求鏡像數(shù)據(jù)。事實(shí)上,$ docker pull docker.io/shaowenchen/images1 與 $ docker pull shaowenchen/images1 同等效果。對(duì)于 DockerHub 提供的鏡像,國(guó)內(nèi)訪問(wèn)速度較慢,可以通過(guò)添加鏡像源的方式加速。
在拉取鏡像時(shí),可能會(huì)有兩個(gè)問(wèn)題:
1,拉取非公開(kāi)鏡像,提示登錄
直接使用 docker login 登錄即可,在非交互場(chǎng)景,可以執(zhí)行:
$ echo "$DOCKER_PASSWORD" | docker login $REGISTRY -u "$DOCKER_USERNAME" --password-stdin
2,鏡像倉(cāng)庫(kù)證書(shū)錯(cuò)誤
如果 IMAGE_NAME 中指定了鏡像倉(cāng)庫(kù)服務(wù)器,但服務(wù)器并不提供合法的 https 服務(wù),那么需要進(jìn)行如下配置:
在 /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é)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。