docker拉取clickhouse鏡像的方法實現(xiàn)
一 配置一下鏡像倉庫的位置
(1)打開docker desktop
點這個小齒輪

給這些配置一個鏡像源
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"debug": false,
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [],
"registry-mirrors": [
"https://pi9dpp60.mirror.aliyuncs.com"
]
}
二 嘗試拉一個鏡像下來
(1)拉一個數(shù)據(jù)庫相關的鏡像下來
這個錯誤是在嘗試從Docker Hub拉取鏡像時出現(xiàn)的網(wǎng)絡連接問題。“EOF”(End Of File)表示連接突然中斷。
docker拉取了第一個鏡像,試了很多次才成功
Microsoft Windows [版本 10.0.26100.3194] (c) Microsoft Corporation。保留所有權利。 C:\Users\20120>docker pull yandex/clickhouse-server Using default tag: latest error during connect: Post "http://%2F%2F.%2Fpipe%2FdockerDesktopLinuxEngine/v1.47/images/create?fromImage=yandex%2Fclickhouse-server&tag=latest": open //./pipe/dockerDesktopLinuxEngine: The system cannot find the file specified. C:\Users\20120>docker pull yandex/clickhouse-server Using default tag: latest latest: Pulling from yandex/clickhouse-server ea362f368469: Pull complete 38ba82a23e2b: Pull complete 9b17d04b6c62: Downloading 5658714e4e8b: Download complete 6bde977a0bf8: Download complete 39053b27290b: Download complete 762d3d237065: Download complete EOF C:\Users\20120>docker pull yandex/clickhouse-server Using default tag: latest Error response from daemon: Get "https://registry-1.docker.io/v2/": EOF C:\Users\20120>docker pull yandex/clickhouse-server Using default tag: latest latest: Pulling from yandex/clickhouse-server ea362f368469: Pull complete 38ba82a23e2b: Pull complete 9b17d04b6c62: Pull complete 5658714e4e8b: Pull complete 6bde977a0bf8: Pull complete 39053b27290b: Pull complete 762d3d237065: Pull complete Digest: sha256:1cbf75aabe1e2cc9f62d1d9929c318a59ae552e2700e201db985b92a9bcabc6e Status: Downloaded newer image for yandex/clickhouse-server:latest docker.io/yandex/clickhouse-server:latest C:\Users\20120>
解決方案:
檢查您的網(wǎng)絡連接,確保能夠穩(wěn)定訪問互聯(lián)網(wǎng)
嘗試使用阿里云Docker鏡像加速器,畢竟阿里鏡像的品質是非常好的,例如:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
可能需要一個服務器地址來訪問Docker Hub
嘗試指定鏡像版本,而不是使用"latest"標簽:
docker pull yandex/clickhouse-server:21.8
如果問題持續(xù)存在,可以嘗試重啟Docker服務:
sudo systemctl restart docker
如果以上方法都不能解決問題,可能是Docker Hub服務臨時不可用,您可以稍后再試。
(2)補充:push和pull的區(qū)別
在Git和Docker中,pull和push的概念都是關于數(shù)據(jù)在本地和遠程倉庫之間傳輸?shù)?,但它們操作的對象和具體行為有所不同。以下是它們在Git和Docker中的異同點:
Git中的Pull和Push
操作對象:
- Git操作的是代碼倉庫,包括代碼文件、版本歷史、分支信息等。
Pull(拉?。?/strong>
- 從遠程倉庫獲取最新的代碼更新,并合并到本地倉庫。
- 主要目的是同步本地倉庫與遠程倉庫的代碼,保持一致。
- 通常涉及合并操作,可能會產(chǎn)生沖突。
Push(推送):
- 將本地倉庫的更改(提交)上傳到遠程倉庫。
- 主要目的是將本地的開發(fā)成果共享到遠程倉庫,供團隊成員協(xié)作。
- 需要權限驗證,確保只有授權用戶才能推送。
Docker中的Pull和Push
操作對象:
- Docker操作的是鏡像(images),即打包好的應用程序及其運行環(huán)境。
Pull(拉?。?/strong>
- 從遠程鏡像倉庫(如Docker Hub)下載鏡像到本地。
- 主要目的是獲取所需的應用程序鏡像,以便在本地運行容器。
- 通常是下載預先構建好的鏡像文件。
Push(推送):
- 將本地構建的鏡像上傳到遠程鏡像倉庫。
- 主要目的是共享自己構建的鏡像,或者備份鏡像到遠程倉庫。
- 需要權限驗證,確保只有授權用戶才能推送。
異同點總結
相同點:
pull和push都涉及本地和遠程倉庫之間的數(shù)據(jù)傳輸。- 它們都是協(xié)作和共享的重要手段。
- 都涉及到權限驗證。
不同點:
- 操作對象不同:Git操作代碼倉庫,Docker操作鏡像。
- 數(shù)據(jù)內容不同:Git傳輸代碼和版本歷史,Docker傳輸打包好的應用程序及其運行環(huán)境。
- Git的pull會涉及到代碼的合并,有可能會產(chǎn)生沖突。Docker的pull是下載鏡像,一般不存在沖突。
應用場景
Git:
- 團隊協(xié)作開發(fā):團隊成員通過
pull和push共享和同步代碼。 - 版本控制:通過
pull獲取最新的代碼版本,通過push提交自己的代碼更改。
Docker:
- 應用程序部署:通過
pull獲取應用程序鏡像,在任何支持Docker的環(huán)境中運行。 - 鏡像共享:通過
push將自己構建的鏡像分享給他人或部署到生產(chǎn)環(huán)境。
到此這篇關于docker拉取clickhouse鏡像的方法實現(xiàn)的文章就介紹到這了,更多相關docker拉取clickhouse鏡像內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
利用Docker搭建Nexus私有倉庫實現(xiàn)Maven私服
Maven大家應該都比較熟了,我這里就用安卓人狂喜的Gradle來演示一下,在build.gradle中編寫腳本即可上傳,接下來通過本文給大家介紹下利用Docker搭建Nexus私有倉庫實現(xiàn)Maven私服的問題,感興趣的朋友一起看看吧2022-01-01

