docker 修改鏡像和容器的存放路徑(最新自己實踐了第三種方法)


docker info :查看docker的存儲等相關信息。

將路徑修改至掛載磁盤中

前提:磁盤已掛載成功

方法一:

1、停止docker 服務

service docker stop

2、備份數據到新的存放路徑

cp -r /var/lib/docker/* /mnt/docker

3、備份 /var/lib/docker 路徑

mv /var/lib/docker /var/lib/dockerbak}

4、創建軟連接

ln -s /mnt/docker /var/lib/docker

5、啟動docker

service docker start

如果docker完整,並可用,可刪除原來的備份文件

此方法,啟動Docker時發現存儲目錄依舊是/var/lib/docker,但是實際上是存儲在數據盤的,你可以在數據盤上看到容量變化。

 

方法二:

關閉docker

在 Ubuntu 中的位置是:/etc/default/docker,在 CentOS 中的位置是:/etc/sysconfig/docker

在OPTIONS加上下面那段代碼: --graph=/local/docker  新的存儲目錄

OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --graph=/local/docker --insecure-registry=0.0.0.0/0'

重啟docker后,docker info 就可以看到目錄換了

 

方法三:(建議:裝好docker后及時修改默認路徑,不要等到應用級的鏡像pull進來后再去修改默認存儲路徑,不然各種錯誤讓你應接不暇,這點我深有體會)

最好是先關閉docker再進行操作

如果docker是1.12或以上的版本,可以修改(或新建)daemon.json文件。修改后會立即生效,不需重啟docker服務。

vim /etc/docker/daemon.json 

{

"graph": "/new-path/docker"

}

注意:如果之前有鏡像和對應的數據,執行完這一步,默認存儲路徑是改掉了,但是會導致之前的鏡像找不到,可以把/var/lib/docker/目錄下的所有文件  cp -R 到掛載有數據分區的目錄下 即:cp -R /var/lib/docker/* /data/tootls/docker/

再測試下鏡像是否能找到


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM