docker無法pull的解決辦法:1、在docker服務(wù)開啟狀態(tài)下,查看自己的“docker root dir”;2、關(guān)閉docker服務(wù);3、新建“root dir path”;4、編輯“daemon.json”,添加“”graph”:“/docker/data””;5、執(zhí)行“systemctl daemon-reload”;6、重啟docker服務(wù)即可。
本教程操作環(huán)境:linux7.3系統(tǒng)、docker19.03版、Dell G3電腦。
docker無法pull怎么辦?
docker pull 鏡像失敗:Error: failed to register layer: no space left on device
docker pull 失敗:ERROR: failed to register layer: /usr/local/openjdk-11/lib/module: no space left on device
簡直太難了,docker pull tomcat鏡像,我第一次pull鏡像就提示我no space left …,空間不足,我已經(jīng)給虛擬機擴容了,而且我什么鏡像都沒安裝,就no space。無語了。網(wǎng)上搜了一堆解決方案,很多都是說修改docker的root dir。按照網(wǎng)上的試了三種方法,愣是沒修改成功。最后其實不是網(wǎng)上方法不對,是不符合自己的。因為我的在/etc/docker/daemon.json文件中配置了加速器。下面說下我的解決方案。我安裝的centos 7系統(tǒng)。
1、在docker服務(wù)開啟狀態(tài)下,查看自己的docker root dir,輸入
docker?info
找到Docker Root Dir: /var/lib/docker,沒修改前我的是這個地址
退出,按下esc按鍵,輸入:wq,回車即可退出
2、然后關(guān)閉docker 服務(wù)
systemctl?stop?docker.service
3、新建一個自己想要修改的root dir path,已經(jīng)有目標地址的不用新建
我的是/xws/docker/images
mkdir?-p?/xws/docker/images
4、編輯/etc/docker/daemon.json 添加”graph”: “/docker/data”
vim?/etc/docker/daemon.json
{ ?"graph":?"/xws/docker/images" }
對于我,最重要的一步是這個!在/etc/docker/daemon.json配置了鏡像加速器的,要修改為如下格式:
{ "registry-mirrors":["https://xxxxx.mirror.aliyuncs.com"],"graph":?"/usr/xws/docker/images" }
我的當時一直修改不成功,是這樣子修改的:以下是錯誤示范:
{ "registry-mirrors":["https://xxxxx.mirror.aliyuncs.com"] } { ?"graph":?"/xws/docker/images" }
5、退出編輯,然后執(zhí)行
systemctl?daemon-reload
6、重啟docker服務(wù)
systemctl?restart?docker.service
7、最后,確認下是否修改成功
docker?info?|?grep?Dir
我的修改成功啦~
我pull tomcat鏡像也成功啦!開心
還有一個問題,linux總是提醒文件系統(tǒng)根目錄上的磁盤空間不足,東西我也不敢亂刪,找了資料后發(fā)現(xiàn)可以把caches刪掉。大家如果有遇到可以試下,就彈出的那個信息,點擊查看,順著內(nèi)存爆滿紅紅的找到caches的刪除即可。
推薦學習:《docker視頻教程》