遷移原因:docker的/var/lib/docker/overlay2的占用空間很大。需要對/var/lib/docker目錄進行遷移
遷移步驟
-
關閉所有的容器服務
docker stop $(docker ps -a -q) -
停止docker服務
systemctl stop docker -
查看磁盤空間
命令:df -h
參數說明:3.1 FileSystem:表示該文件系統位於哪個分區,因此該列顯示的是設備名稱
3.2 Size:文件系統的總大小
3.3 Used:表示已使用的磁盤空間大小
3.4 Avail:表示可用的磁盤空間大小
3.5 Mounted on:表示文件系統掛載點,也就是硬盤掛載的目錄位置
注:選擇一個較大的空間作為新的地址
-
創建docker的新目錄
mkdir /data/docker/lib -p -
遷移
rsync -avzP /var/lib/docker /data/docker/lib/
參數說明:
5.1 -a, 歸檔模式,表示遞歸傳輸並保持文件屬性。
5.2 -v,顯示rsync過程中詳細信息。可以使用"-vvvv"獲取更詳細信息。
5.3 -P,顯示文件傳輸的進度信息。(實際上"-P"="--partial --progress",其中的"--progress"才是顯示進度信息的)。
5.4 -z, 傳輸時進行壓縮提高效率。 -
指定新的docker目錄
vi /lib/systemd/system/docker.service
在ExecStart加入:--graph=/data/docker/lib/docker
-
重啟docker
systemctl daemon-reload 重新載入配置 systemctl restart docker 重啟docker systemctl enable docker 自動啟動docker服務
-
測試
-
刪除舊的/var/lib/docker目錄
參考文章:
https://my.oschina.net/qbj/blog/2998164
http://c.biancheng.net/view/883.html