Docker: load鏡像時提示(no space left device)解決方案

Docker: load鏡像時提示(no space left device)解決方案

1. 背景

LZ花了幾天時間配置了一套sever環境,期間無比痛苦真的,但是基本上配置完一次後一勞永逸,只要把對應的鏡像load進服務器,就不用再配置環境了,雖然前期麻煩很多,但是無論換什麼機器,LZ基本上可以是一鍵部署了,不過這也是剛剛學習的一個新技能,所以應用起來並不是很熟練,尤其是遇到使用gpu的一些問題,如驅動之類的問題,解決起來還是比較痛苦的,好啦,生活不就是這樣嘛.

那麼辛苦配置好的docker環境, lz使用save將其保存下來

docker save ID > your_image_name.tar

因爲image比較大,還是需要挺長時間的

然後上傳到服務器上使用

docker load < your_image_name.tar

滿心歡喜以爲可以創建一個容器,結果發現

no space left device

2. 解決方案

出現此問題一般是docker 根目錄空間不足導致。可修改其 Docker Root Dir 的值,使其指向一個更大空間的目錄即可,LZ通過

df -h

發現系統盤確實被用完了,但是home路徑下還有空間,於是進行了如下操作

1. 查看docker 的根目錄:

docker info 

顯示信息中有docker根目錄的位置信息, Docker Root Dir: /var/lib/docker/

2. 查看目錄所剩餘空間

df  -hl   /var/lib/docker/

我把它改到/home/docker/lib/docker目錄下

3. 創建目標目錄

mkdir -p /etc/systemd/system/docker.service.d/

4. 創建配置文件

vi /etc/systemd/system/docker.service.d/devicemapper.conf

5. 錄入配置信息

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd  --graph=/home/docker/lib/docker

6. 更新docker

systemctl daemon-reload

systemctl restart docker

systemctl enable docker

7. 注意點

由於更換了docker 目錄,以前下載的鏡像需要轉移到新目錄下,建議直接刪除原來的鏡像,重新下載。所以這個建議在剛開始下載docker的時候就進行修改,避免後續的問題

參考地址

  1. https://www.jianshu.com/p/8408e06b7273
  2. https://www.cnblogs.com/lostvip/p/9909689.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章