2025-04-22-docker desktop Settings Builders

2025-04-22-docker desktop Settings Builders

docker desktop Settings
Builders:
Selected builder
The default builder used when you start a build.
desktop-linux …… error

Available binders
Inspect and manage your binders.
default ....... error

好 👌 你現在看到的是 Docker Desktop → Settings → Builders 的錯誤訊息:

  • desktop-linux ...... error
  • default ....... error

這表示 Docker Desktop 啟動後,內建的 BuildKit Builder 沒有正常載入。


🔍 為什麼會出錯?

  1. Docker Daemon 啟動有問題

    • 如果你的 Docker Engine 設定(daemon.json) 有語法錯誤,Docker Daemon 會啟動失敗 → builder 也會掛掉。
  2. WSL2 後端沒有正常啟動

    • Docker Desktop 依賴 WSL2(你勾了「Use WSL2 backend」)。
    • 如果 WSL2 沒有 Ubuntu 或其他 Linux 發行版,Docker 有時候啟動不完整。
  3. Docker Desktop 內部狀態錯亂

    • 有時候更新或重開機後,builder 設定檔沒載入,導致錯誤。

✅ 解決方式

你可以依序嘗試以下方法:

1. 確認 Docker Engine JSON 正確

  • 打開 Settings → Docker Engine
  • 確認 JSON 沒錯(例如上一版建議的設定)
  • Apply & Restart

如果 JSON 有逗號、括號錯誤,Docker Daemon 就會掛掉,Builder 一定會錯。


2. 重啟 WSL2

在 PowerShell 輸入:

1
wsl --shutdown

然後重新開啟 Docker Desktop,等「🐳 icon」變成綠色。


3. 重建 Builder

在 PowerShell 或 Docker CLI 輸入:

1
2
docker buildx create --use --name mybuilder
docker buildx inspect --bootstrap

這會建立一個新的 builder (mybuilder) 並啟用它。

檢查是否修好:

1
docker buildx ls

應該會看到 mybuilder 而不是錯誤。


4. 檢查 WSL 發行版

輸入:

1
wsl -l -v

確保有一個 Linux 發行版(例如 Ubuntu),而且版本是 2
如果顯示 You don't have any WSL 2 distros installed(你之前看到過),建議安裝 Ubuntu:

1
wsl --install -d Ubuntu

📌 總結

  • 90% 的情況是 daemon.json 格式錯誤WSL2 沒有 Linux 發行版 導致 builder error。
  • 建議你先檢查 Docker Engine JSON 是否正確 → 然後 wsl --shutdown → 再開 Docker Desktop。
  • 如果還是錯,再用 docker buildx create --use 建立新 builder。

要不要我幫你整理一個 最小可用的 daemon.json(完全不改動,只保證能啟動),讓你測試是不是 JSON 設定害的?

對~你觀察得很準 🎯

Docker Desktop Settings 裡面,如果你有修改過設定(例如 Docker Engine 那個 JSON、或是 Builders 的選項),通常要按 Apply & Restart 才會真正生效。

👉 幾個注意事項:

  1. Apply & Restart 會重新啟動 Docker Engine,所以在此過程中正在跑的容器會中斷。
  2. 如果修改了 Docker Engine JSON,格式要正確,否則會啟動失敗(會回報 error)。
  3. 你看到 desktop-linux ... errordefault ... error,很可能是因為上次的設定沒有正確套用,或 Docker Engine 沒有正確啟動。
  4. 建議你先回到 General 頁籤 → 勾選 “Use the WSL 2 based engine”(如果你在 Win11 上) → 按 Apply & Restart,確保引擎能正常啟動。

要不要我一步一步帶你 重設 Docker Desktop 的基本設定,確保你的 Builders 不會 error