Docker無法登錄與推送問題解決的詳細(xì)教程
一、前言
自從 2023 年 5 月中旬以來,著名的 Docker 容器平臺 hub.docker.com 因不明原因在國內(nèi)無法正常訪問。為了更好地使用 Docker 服務(wù),阿里云提供了容器鏡像服務(wù),下面介紹如何使用阿里云容器鏡像服務(wù)進(jìn)行操作。
二、阿里云鏡像服務(wù)設(shè)置
1. 搜索容器鏡像服務(wù)
在阿里云官網(wǎng)搜索并進(jìn)入容器鏡像服務(wù)頁面。
2. 開通容器鏡像服務(wù)
點擊“立即開通”,開始創(chuàng)建鏡像服務(wù)實例,個人版是免費的。
3. 選擇個人實例
選擇個人實例后,進(jìn)入鏡像倉庫設(shè)置頁面。
4. 創(chuàng)建鏡像倉庫
按照提示創(chuàng)建新的鏡像倉庫。
選擇本地倉庫并填寫相關(guān)信息。
創(chuàng)建完成后,在界面中可以看到倉庫的基本信息。
點進(jìn)去查看詳情。
這里面就有操作指南,然后根據(jù)指南就可以進(jìn)行操作。
三、配置Docker
修改 Docker 的配置文件 /etc/docker/daemon.json,以便支持阿里云鏡像服務(wù)。
sudo vim /etc/docker/daemon.json
1 { 2 "registry-mirrors": [ 3 "https://docker.hpcloud.cloud", 4 "https://docker.m.daocloud.io", 5 "https://docker.unsee.tech", 6 "https://docker.1panel.live", 7 "http://mirrors.ustc.edu.cn", 8 "https://docker.chenby.cn", 9 "http://mirror.azure.cn", 10 "https://dockerpull.org", 11 "https://dockerhub.icu", 12 "https://hub.rat.dev", 13 "https://registry.cn-hangzhou.aliyuncs.com" 14 ], 15 "data-root":"/data/var/lib/docker" 16 17 }
registry-mirrors 中最后一個配置是阿里云的鏡像源。
data-root 配置 Docker 拉取鏡像時的存儲路徑(可根據(jù)需要修改)。
保存后重啟 Docker 服務(wù):
sudo systemctl restart docker
四、操作鏡像
我們進(jìn)行演示,如何pull和push。
1. 登錄阿里云鏡像倉庫
根據(jù)阿里云操作指南登錄鏡像倉庫,注意普通用戶需要使用 sudo 權(quán)限。 注意這里如果是普通用戶,一定要sudo,不然push的時候權(quán)限不夠。這個就是阿里云操作指南的第一個登錄阿里云。名字根據(jù)自己的進(jìn)行修改。
之后輸入密碼,密碼就是創(chuàng)建容器鏡像的時候設(shè)置的密碼。
sudo docker login --username=aliyun名字 crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com
成功登錄后會提示:
Login Succeeded
2. 拉取鏡像
從 Docker Hub 下載鏡像,我們選擇的是nginx 1.22.0來進(jìn)行演示
sudo docker pull nginx:1.22.0
拉取完成后可以通過 docker images 查看鏡像。
sudo docker images
3. 推送鏡像
將拉取下來的鏡像推送到阿里云鏡像倉庫。
給鏡像打標(biāo)簽:標(biāo)簽有對應(yīng)格式。對應(yīng)的版本號是自己取的,根據(jù)自己的愛好來取。
sudo docker tag nginx:1.22.0 crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com/dijia1/mytest:1.22.0
倉庫地址:crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com
命名空間:dijia1
倉庫名稱:mytest
鏡像版本號:1.22.0
查看images
sudo docker images
之后就可以推送到倉庫了。
4. 推送到阿里云鏡像倉庫:
根據(jù)自己打的標(biāo)簽修改對應(yīng)的指令。就是sudo docker push 標(biāo)簽
sudo docker push crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com/dijia1/mytest: 1.22.0
等待提交完成。
在阿里云容器鏡像服務(wù)中檢查是否推送成功。
可以看到提交成功。
五、 拉取阿里云鏡像倉庫的鏡像
1. 刪除本地鏡像:
sudo docker rmi crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com/dijia1/mytest:1.22.0
sudo docker images
2. 拉取鏡像:
sudo docker pull crpi-ojvnoquos46hz0vo.cn-hangzhou.personal.cr.aliyuncs.com/dijia1/mytest:1.22.0
可以看到,拉取成功。
這里就完成了基本的docker login,docker push,docker pull操作了。
六、測試?yán)?Docker Hub 鏡像
我們再試試?yán)ockerHub的源。
測試一下這個。
sudo docker pull nginx:1.27.3-alpine
等待30s左右,可以看到下載成功。
七、退出登錄。
sudo docker logout
八、總結(jié)
通過阿里云容器鏡像服務(wù),可以快速解決國內(nèi)訪問 Docker Hub 速度慢甚至無法訪問的問題,并支持鏡像的上傳與管理。此外,結(jié)合阿里云鏡像服務(wù),可以實現(xiàn)更高效的鏡像管理。
到此這篇關(guān)于Docker無法登錄與推送問題解決的文章就介紹到這了,更多相關(guān)Docker無法登錄與推送內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于jib-maven-plugin插件快速構(gòu)建微服務(wù)docker鏡像的方法
這篇文章主要介紹了基于jib-maven-plugin快速構(gòu)建微服務(wù)docker鏡像的方法,對于?Java?程序來說使用?jib-maven-plugin?插件來構(gòu)建鏡像還是非常方便的,本文通過實例代碼詳細(xì)講解,需要的朋友可以參考下2023-02-02創(chuàng)建的docker容器時間顯示錯誤/date錯誤/時區(qū)錯誤
這篇文章主要介紹了創(chuàng)建的docker容器時間顯示錯誤/date錯誤/時區(qū)錯誤的處理方法,一起看看吧2017-06-06docker實現(xiàn)導(dǎo)出、導(dǎo)入和數(shù)據(jù)搬遷
本篇文章主要介紹了docker實現(xiàn)導(dǎo)出、導(dǎo)入和數(shù)據(jù)搬遷,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07Docker鏡像用普通用戶啟動服務(wù)的實現(xiàn)
使用普通用戶啟動Docker容器中的服務(wù),可以有效降低潛在的安全風(fēng)險,本文主要介紹了Docker鏡像用普通用戶啟動服務(wù)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺操作
這篇文章主要介紹了Docker Gitlab+Jenkins+Harbor構(gòu)建持久化平臺操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11