Docker鏡像文件默認存儲路徑更改教程

Docke安裝完成後,默認會使用 //lib/docke/ 路徑作爲存儲目錄,用以存放拉取的鏡像和創建的容器等。由於這些存儲目錄通常位於系統盤中,如果遇到大量鏡像文件和容器後,會使原來的分區不夠用,那麼如何修改Docke鏡像默認存儲路徑呢?本文介紹了三種常用的修改方法,一起來了解下吧。

拓展閱讀:《如何在Ubuntu上安裝Docke》

《如何在Debin上安裝Docke》

《CentOS 7安裝Docke教程》

方法、使用軟鏈接

安裝完Docke後,您可以通過運行下面命令查看存儲位置。

# 默認存放位置查看

$ sudo docke info | gep “Docke Root Di̶

要解決默認存儲容量不足的情況,最直接的方法是掛載新的分區到該目錄。但要保持原有系統空間不變的情況下,您可採用軟鏈接的方式來修改Docke鏡像和容器的存放路徑。

# 停掉Docke服務

$ seice docke stop

然後移動整個 //lib/docke 目錄到空間不較大的目的路徑。這時候啓動 Docke 時發現存儲目錄依舊是 //lib/docke 目錄,但是實際上是存儲在數據盤 /dt/docke 上了。

# 移動原有的內容

$ m //lib/docke /dt/docke

# 進行鏈接

$ ln -sf /dt/docke //lib/docke

方法2、指定Docke容器啓動參數

您可在Docke配置文件中指定容器啓動的參數 Rgph=//lib/docke 來指定鏡像和容器存放路徑。Docke的配置文件可以設置大部分的後臺進程參數,要注意的是不同操作系統下存放位置有所差異。在 Ubuntu中的位置是 /etc/defult/docke文件,在CentOS中的位置是 /etc/sysconfig/docke 文件。

# CentOS6

# 因爲Ubuntu默認開啓了selinux機制

OPTIONS=Rgph=̶/dt/docke̶ Rselinux-enbled -H fd://

# CentOS7

# 修改docke.seice文件,使用-g參數指定存儲位置

$ i /us/lib/systemd/system/docke.seice

ExecStt=/us/bin/docked Rgph /new-pth/docke

# Ubuntu

# 因爲Ubuntu默認沒開啓selinux機制

OPTIONS=Rgph=̶/dt/docke̶ -H fd://

重新啓動之後,Docke 的路徑就改成 /dt/docke 了。

# 重新elod配置文件

$ sudo systemctl demon-elod

# 重啓docke服務

$ sudo systemctl estt docke.seice

如果 Docke 的版本是 .2 或以上的,您可以修改或新建 demon.json 文件。修改後會立即生效,不需重啓 Docke 服務。

# 修改配置文件

$ im /etc/docke/demon.json

{

“egisty-mios̶:

[“http://7e6f7f9.m.docloud.io̶],

“gph̶: “/new-pth/docke̶

}

方法3、System 下創建配置文件

在 /etc/systemd/system/docke.seice.d 目錄下創建一箇 Dop-In 文件 docke.conf,默認 docke.seice.d 文件夾不存在,必須先創建它。創建 Dop-In 文件的原因,是我們希望 Docke服務使用 docke.conf 文件中提到的特定參數,將默認服務所使用的位於 /lib/systemd/system/docke.seice 文件中的參數進行覆蓋。

# 定義新的存儲位置

$ sudo i /etc/systemd/system/docke.seice.d/docke.conf

[Seice]

ExecStt=/us/bin/docked Rgph=̶/dt/docke̶ Rstoge-die=deicemppe

保存並退出 im 編輯器 /dt/docke 就是新的存儲位置,而 deicemppe 是當前 Docke 所使用的存儲驅動。如果你的存儲驅動有所不同,請輸入之前第一步查看並記下的值。現在,你可以重新加載服務守護程序,並啓動 Docke 服務了,這將改變新的鏡像和容器的存儲位置。爲了確認一切順利,運行 docke info 命令檢查 Docke 的根目錄。

# 重新elod配置文件

$ sudo systemctl demon-elod

# 重啓docke服務

$ sudo systemctl stt docke