Docker 守護行程設定概觀

此頁面說明如何自訂 Docker 守護行程 dockerd

**注意**

此頁面適用於手動安裝 Docker Engine 的使用者。如果您使用的是 Docker Desktop,請參閱設定頁面

設定 Docker 守護行程

設定 Docker 守護行程有兩種方式

  • 使用 JSON 設定檔。這是首選選項,因為它將所有設定都保存在一個地方。
  • 在啟動 dockerd 時使用旗標。

您可以同時使用這兩個選項,只要您不要將相同的選項同時指定為旗標和在 JSON 檔案中即可。如果發生這種情況,Docker 守護行程將無法啟動,並會顯示錯誤訊息。

設定檔

下表顯示 Docker 守護行程預設預期找到設定檔的位置,具體取決於您的系統以及您執行守護行程的方式。

作業系統和設定檔案位置
Linux,一般設定/etc/docker/daemon.json
Linux,無根模式~/.config/docker/daemon.json
WindowsC:\ProgramData\docker\config\daemon.json

對於無根模式,守護行程會遵守 XDG_CONFIG_HOME 變數。如果已設定,則預期的檔案位置為 $XDG_CONFIG_HOME/docker/daemon.json

您也可以在啟動時使用 dockerd --config-file 旗標明確指定設定檔的位置。

dockerd 參考文件中瞭解可用的設定選項

使用旗標進行設定

您也可以手動啟動 Docker 守護行程,並使用旗標進行設定。這對於疑難排解問題很有用。

以下是如何手動啟動 Docker 守護行程的範例,使用的設定與先前顯示的 JSON 設定相同

$ dockerd --debug \
  --tls=true \
  --tlscert=/var/docker/server.pem \
  --tlskey=/var/docker/serverkey.pem \
  --host tcp://192.168.59.3:2376

dockerd 參考文件中瞭解可用的設定選項,或透過執行以下命令來瞭解

$ dockerd --help

守護行程資料目錄

Docker 守護行程將所有資料都保存在單一目錄中。這會追蹤與 Docker 相關的所有內容,包括容器、映像檔、磁碟區、服務定義和機密。

預設情況下,此目錄是

  • Linux 上的 /var/lib/docker
  • Windows 上的 C:\ProgramData\docker

您可以使用 data-root 設定選項設定 Docker 守護行程以使用不同的目錄。例如

{
  "data-root": "/mnt/docker-data"
}

由於 Docker 守護行程的狀態保存在此目錄中,因此請確保您為每個守護行程使用專用目錄。例如,如果兩個守護行程共用同一個目錄(例如 NFS 共用),您將會遇到難以疑難排解的錯誤。

後續步驟

Docker 文件中討論了許多特定的設定選項。接下來可以參考的一些地方包括