1. docker pull 拉取鏡像
使用 $ docker pull {IMAGE_NAME}
拉取鏡像時,有兩種情況:
Docker 會將 IMAGE_NAME 識別為帶域名的鏡像。例如,myregistry.io/space1/image1:latest ,Docker 會去 myregistry.io 指向的服務器請求鏡像數(shù)據(jù)。一個 Docker 鏡像分為很多層,如果本地存在該層,則不會再次拉取。
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 中指定了鏡像倉庫服務器,但服務器并不提供合法的 https 服務,那么需要進行如下配置:
在 /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 生效。
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。