轉載請注明出處:小鋒學長生活大爆炸[xfxuezhagn.cn]
如果本文幫助到了你,歡迎[點贊、收藏、關注]哦~
目錄
背景說明
更換教程
1. 停止 Docker 服務
2. 創建新的存儲目錄
3. 編輯 Docker 配置文件
4. 遷移已有數據到新位置
5. 啟動 Docker 服務
6. 驗證當前 Docker 存儲位置
注意事項
背景說明
Docker 默認將所有數據存儲在:
/var/lib/docker
現在希望更換位置,比如存到/mnt下面去。
更換教程
1. 停止 Docker 服務
sudo systemctl stop docker
2. 創建新的存儲目錄
sudo mkdir -p /mnt/vdb/docker
你也可以指定其他路徑,比如 /mnt/disk/docker
,只要該目錄有足夠空間并已掛載好。
3. 編輯 Docker 配置文件
Docker 的配置文件在:
sudo vim /etc/docker/daemon.json
如果沒有這個文件,可以手動創建它。
修改或添加以下內容:
{ "data-root": "/mnt/vdb/docker" }
4. 遷移已有數據到新位置
如果你不想丟棄原來已有的鏡像或容器數據,可以執行以下命令遷移:
sudo rsync -aP /var/lib/docker/ /mnt/vdb/docker/
注意最后的 / 是為了復制目錄 內部內容 而不是目錄本身,所以記得加。
-a
:歸檔模式,保留權限、符號鏈接等
-P
:顯示進度,并支持斷點續傳
5. 啟動 Docker 服務
sudo systemctl start docker
6. 驗證當前 Docker 存儲位置
執行:
sudo docker info | grep "Docker Root Dir"
應輸出類似:
Docker Root Dir: /mnt/vdb/docker
注意事項
-
如果你使用的是 Docker Desktop(Windows/Mac),請在圖形界面中設置,不適用此方案。
-
如果你使用的是 自定義安裝路徑或容器運行時(如 containerd),對應方式可能不同。
-
推薦使用
rsync
而非cp
進行遷移,因為它能保留符號鏈接、權限等信息。