疑難排解 Docker Desktop

本頁包含如何診斷及疑難排解 Docker Desktop,以及如何檢查日誌的資訊。

警告

如果您在 Mac 上遇到惡意軟體偵測問題,請遵循以下文件中記載的步驟:docker/for-mac#7527

疑難排解選單

若要導覽至 疑難排解,您可以

  • 選取 Docker 選單 Docker 選單 whale menu,然後選取 疑難排解
  • 選取 Docker 儀表板右上角的 疑難排解 圖示。

疑難排解 選單包含以下選項:

  • 重新啟動 Docker Desktop.

  • 重設 Kubernetes 叢集。選取此選項可刪除所有堆疊和 Kubernetes 資源。如需更多資訊,請參閱Kubernetes

  • 清除 / 清理資料。此選項會重設所有 Docker 資料,但不重設為出廠預設值。選取此選項將導致現有設定遺失。

  • 重設為出廠預設值:選取此選項可將 Docker Desktop 上的所有選項重設為其初始狀態,與首次安裝 Docker Desktop 時相同。

如果您是 Mac 或 Linux 使用者,您還可以選擇從系統 解除安裝 Docker Desktop。

診斷

提示

如果您在疑難排解中找不到解決方案,請瀏覽 GitHub 儲存庫或建立新的問題

從應用程式診斷

  1. 疑難排解,選取 取得支援。這會開啟應用程式內的「支援」頁面並開始收集診斷資訊。
  2. 診斷資訊收集完成後,選取 上傳以取得診斷 ID
  3. 診斷資訊上傳後,Docker Desktop 會列印診斷 ID。複製此 ID。
  4. 使用您的診斷 ID 尋求協助
    • 如果您擁有付費的 Docker 訂閱,請選取 聯絡支援。這會開啟 Docker Desktop 支援表單。填寫所需資訊,並將您在步驟三中複製的 ID 新增至 診斷 ID 欄位。然後,選取 提交請求單 以請求 Docker Desktop 支援。
      注意

      您必須登入 Docker Desktop 才能存取支援表單。如需有關 Docker Desktop 支援範圍的資訊,請參閱支援

    • 如果您沒有付費的 Docker 訂閱,請選取 回報錯誤 以在 GitHub 上開啟新的 Docker Desktop 問題。填寫所需資訊,並確保新增您在步驟三中複製的診斷 ID。

從錯誤訊息診斷

  1. 當錯誤訊息出現時,選取 收集診斷資訊
  2. 診斷資訊上傳後,Docker Desktop 會列印診斷 ID。複製此 ID。
  3. 使用您的診斷 ID 尋求協助
    • 如果您擁有付費的 Docker 訂閱,請選取 聯絡支援。這會開啟 Docker Desktop 支援表單。填寫所需資訊,並將您在步驟三中複製的 ID 新增至 診斷 ID 欄位。然後,選取 提交請求單 以請求 Docker Desktop 支援。
      注意

      您必須登入 Docker Desktop 才能存取支援表單。如需有關 Docker Desktop 支援範圍的資訊,請參閱支援

    • 如果您沒有付費的 Docker 訂閱,您可以在 GitHub 上為 MacWindowsLinux 開啟新的 Docker Desktop 問題。填寫所需資訊,並確保新增在步驟二中列印的診斷 ID。

從終端機診斷

在某些情況下,自行執行診斷會很有用,例如 Docker Desktop 無法啟動時。

  1. 找到 com.docker.diagnose 工具

    $ C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe
    
  2. 建立並上傳診斷 ID。在 PowerShell 中,執行

    $ & "C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe" gather -upload
    

診斷完成後,終端機將顯示您的診斷 ID 和診斷檔案的路徑。診斷 ID 由您的使用者 ID 和時間戳記組成。例如 BE9AFAAF-F68B-41D0-9D12-84760E6B8740/20190905152051

  1. 找到 com.docker.diagnose 工具

    $ /Applications/Docker.app/Contents/MacOS/com.docker.diagnose
    
  2. 建立並上傳診斷 ID。執行

    $ /Applications/Docker.app/Contents/MacOS/com.docker.diagnose gather -upload
    

診斷完成後,終端機將顯示您的診斷 ID 和診斷檔案的路徑。診斷 ID 由您的使用者 ID 和時間戳記組成。例如 BE9AFAAF-F68B-41D0-9D12-84760E6B8740/20190905152051

  1. 找到 com.docker.diagnose 工具

    $ /opt/docker-desktop/bin/com.docker.diagnose
    
  2. 建立並上傳診斷 ID。執行

    $ /opt/docker-desktop/bin/com.docker.diagnose gather -upload
    

診斷完成後,終端機將顯示您的診斷 ID 和診斷檔案的路徑。診斷 ID 由您的使用者 ID 和時間戳記組成。例如 BE9AFAAF-F68B-41D0-9D12-84760E6B8740/20190905152051

若要查看診斷檔案的內容

  1. 解壓縮檔案。在 PowerShell 中,複製並貼上診斷檔案的路徑到以下命令中,然後執行。應類似於以下範例

    $ Expand-Archive -LiteralPath "C:\Users\testUser\AppData\Local\Temp\5DE9978A-3848-429E-8776-950FC869186F\20230607101602.zip" -DestinationPath "C:\Users\testuser\AppData\Local\Temp\5DE9978A-3848-429E-8776-950FC869186F\20230607101602"
  2. 在您偏好的文字編輯器中開啟檔案。執行

    $ code <path-to-file>

執行

$ open /tmp/<your-diagnostics-ID>.zip

執行

$ unzip –l /tmp/<your-diagnostics-ID>.zip

使用您的診斷 ID 尋求協助

如果您擁有付費的 Docker 訂閱,請選取 聯絡支援。這會開啟 Docker Desktop 支援表單。填寫所需資訊,並將您在步驟三中複製的 ID 新增至 診斷 ID 欄位。然後,選取 提交請求單 以請求 Docker Desktop 支援。

如果您沒有付費的 Docker 訂閱,請在 GitHub 上建立問題

自我診斷工具

重要

此工具已棄用。

檢查日誌

除了使用診斷選項提交日誌外,您還可以自行瀏覽日誌。

在 PowerShell 中,執行

$ code $Env:LOCALAPPDATA\Docker\log

這將在您偏好的文字編輯器中開啟所有日誌供您查看。

從終端機

若要在命令列中查看 Docker Desktop 日誌的即時流動,請從您偏好的 Shell 執行以下指令碼。

$ pred='process matches ".*(ocker|vpnkit).*" || (process in {"taskgated-helper", "launchservicesd", "kernel"} && eventMessage contains[c] "docker")'
$ /usr/bin/log stream --style syslog --level=debug --color=always --predicate "$pred"

或者,若要將最後一天的日誌 (1d) 收集到檔案中,請執行

$ /usr/bin/log show --debug --info --style syslog --last 1d --predicate "$pred" >/tmp/logs.txt

從 Console 應用程式

Mac 提供了一個內建的日誌檢視器,名為 Console,您可以用它來檢查 Docker 日誌。

Console 位於 /Applications/Utilities。您可以使用 Spotlight 搜尋來尋找它。

若要閱讀 Docker 應用程式的日誌訊息,請在 Console 視窗搜尋列中輸入 docker 並按下 Enter 鍵。然後選取 ANY 以展開 docker 搜尋條目旁邊的下拉式清單,並選取 Process

Mac Console search for Docker app

您可以使用 Console 日誌查詢來搜尋日誌、以各種方式篩選結果並建立報告。

您可以執行以下命令來存取 Docker Desktop 日誌

$ journalctl --user --unit=docker-desktop

您也可以在 $HOME/.docker/desktop/log/ 找到 Docker Desktop 中包含的內部元件的日誌。

查看 Docker 守護程序日誌

請參閱閱讀守護程序日誌部分,了解如何查看 Docker 守護程序日誌。

更多資源

© . This site is unofficial and not affiliated with Kubernetes or Docker Inc.