更改 Mac 上的 Docker Desktop 設定
此頁面提供有關如何配置和管理您的 Docker Desktop for Mac 設定的資訊。
要導航到 **設定**,您可以:
- 選擇 Docker 選單
,然後選擇 **設定**
- 從 Docker 儀表板中選擇 **設定** 圖示。
您也可以在 ~/Library/Group Containers/group.com.docker/settings.json
找到 settings.json
檔案。
一般
在 **常規** 選項卡中,您可以配置 Docker 啟動時間並指定其他設定。
**登入計算機時啟動 Docker Desktop**。選擇此選項可在登入您的計算機時自動啟動 Docker Desktop。
**Docker Desktop 啟動時開啟 Docker 儀表板**。選擇此選項可在啟動 Docker Desktop 時自動開啟儀表板。
**為 Docker Desktop 選擇主題**。選擇是否要將 **淺色** 或 **深色** 主題應用於 Docker Desktop。或者,您可以將 Docker Desktop 設定為 **使用系統設定**。
**選擇容器終端**。確定從容器中開啟終端時啟動哪個終端。如果您選擇整合終端,則可以直接從 Docker 儀表板在正在執行的容器中執行命令。有關更多資訊,請參閱 探索容器。
**預設情況下啟用 Docker 除錯**。選中此選項以在訪問整合終端時預設情況下使用 Docker 除錯。有關更多資訊,請參閱 探索容器。
**將虛擬機器包含在 Time Machine 備份中**。選擇此選項以備份 Docker Desktop 虛擬機器。此選項預設情況下處於關閉狀態。
**使用 containerd 拉取和儲存映象**。啟用 containerd 映象儲存。這帶來了新的功能,例如透過延遲拉取映象來加快容器啟動速度,以及能夠使用 Docker 執行 Wasm 應用程式。有關更多資訊,請參閱 containerd 映象儲存。
**使用虛擬化框架**。選擇此選項以允許 Docker Desktop 使用
virtualization.framework
而不是hypervisor.framework
。提示
啟用此設定可使 Docker Desktop 執行得更快。
**為您的容器選擇檔案共享實現**。選擇是否要使用 **VirtioFS**、**gRPC FUSE** 或 **osxfs** 共享檔案。VirtioFS 僅適用於 macOS 12.5 及更高版本,預設情況下處於啟用狀態。
提示
使用 VirtioFS 進行快速檔案共享。VirtioFS 將完成檔案系統操作所需的時間縮短了 高達 98%
**在 Apple Silicon 上使用 Rosetta 進行 x86_64/amd64 模擬**。啟用 Rosetta 以加速 Apple Silicon 上的 x86/AMD64 二進位制模擬。此選項僅在您在 **常規** 設定選項卡中啟用了 **虛擬化框架** 時才可用。您還必須使用 macOS Ventura 或更高版本。
**傳送使用情況統計資訊**。選擇此選項可讓 Docker Desktop 傳送診斷資訊、崩潰報告和使用情況資料。此資訊有助於 Docker 改善和除錯應用程式。清除複選框以選擇退出。Docker 可能會定期提示您提供更多資訊。
**使用增強型容器隔離**。選擇此選項以透過阻止容器破壞 Linux 虛擬機器來增強安全性。有關更多資訊,請參閱 增強型容器隔離。
注意
此設定僅在您登入 Docker Desktop 並且擁有 Docker Business 訂閱時才可用。
**顯示 CLI 提示**。在 CLI 中執行 Docker 命令時顯示 CLI 提示和技巧。預設情況下處於啟用狀態。要在 CLI 中啟用或停用 CLI 提示,請將
DOCKER_CLI_HINTS
分別設定為true
或false
。**SBOM 索引**。啟用此選項後,檢查 Docker Desktop 中的映象將顯示一個 **開始分析** 按鈕,選中該按鈕後,將使用 Docker Scout 分析映象。
**啟用後臺 SBOM 索引**。啟用此選項後,Docker Scout 將自動分析您構建或拉取的映象。
**自動檢查配置**。定期檢查您的配置,以確保沒有其他應用程式做出意外更改。
Docker Desktop 會檢查您在安裝過程中配置的設定是否已被 Orbstack 等外部應用程式更改。Docker Desktop 會檢查
- Docker 二進位制檔案到
/usr/local/bin
的符號連結。 - 預設 Docker 套接字的符號連結。此外,Docker Desktop 確保在啟動時將上下文切換到
desktop-linux
。
如果發現更改,您會收到通知,並且可以直接從通知中恢復配置。有關更多資訊,請參閱 常見問題解答。
- Docker 二進位制檔案到
資源
**資源** 選項卡允許您配置 CPU、記憶體、磁碟、代理、網路和其他資源。
高階
在 **高階** 選項卡中,您可以限制可用於 Docker Linux 虛擬機器的資源。
高階設定包括
**CPU 限制**。指定 Docker Desktop 可使用的最大 CPU 數量。預設情況下,Docker Desktop 設定為使用主機上可用的所有處理器。
**記憶體限制**。預設情況下,Docker Desktop 設定為使用高達 50% 的主機記憶體。要增加 RAM,請將其設定為更高的數字;要減小它,請降低數字。
**交換**。根據需要配置交換檔案大小。預設值為 1 GB。
**虛擬磁碟限制**。指定磁碟映像的最大大小。
**磁碟映像位置**。指定儲存容器和映象的 Linux 卷的位置。
您也可以將磁碟映像移動到其他位置。如果您嘗試將磁碟映像移動到已經存在磁碟映像的位置,系統會詢問您是否要使用現有映像或替換它。
提示
如果您感覺 Docker Desktop 開始變慢,或者您正在執行多容器工作負載,請增加記憶體和磁碟映像空間分配。
**資源節約器**。啟用或停用 資源節約器模式,該模式透過在 Docker Desktop 空閒時(即沒有容器執行)自動關閉 Linux 虛擬機器來顯著降低主機上的 CPU 和記憶體使用率。
您也可以配置資源節約器超時,它指示 Docker Desktop 應該在資源節約器模式啟動之前處於空閒狀態的時間。預設值為 5 分鐘。
注意
當容器執行時,將自動退出資源節約器模式。退出可能需要幾秒鐘(約 3 到 10 秒),因為 Docker Desktop 會重新啟動 Linux 虛擬機器。
檔案共享
使用檔案共享允許您的計算機上的本地目錄與 Linux 容器共享。這對於在主機上使用 IDE 編輯原始碼並在容器中執行和測試程式碼特別有用。
同步檔案共享
同步檔案共享是一種替代檔案共享機制,它提供快速靈活的主機到虛擬機器檔案共享,透過使用同步檔案系統快取來提高繫結掛載效能。適用於 Pro、Team 和 Business 訂閱。
要了解更多資訊,請參閱 同步檔案共享。
虛擬檔案共享
預設情況下,/Users
、/Volumes
、/private
、/tmp
和 /var/folders
目錄是共享的。如果您的專案位於該目錄之外,則必須將其新增到列表中,否則您可能會在執行時收到 掛載被拒絕
或 無法啟動服務
錯誤。
檔案共享設定包括
**新增目錄**。選擇
+
並導航到要新增的目錄。**刪除目錄**。選擇要刪除的目錄旁邊的
-
。**應用並重新啟動** 使目錄可用於使用 Docker 繫結掛載 (
-v
) 功能的容器。
有關共享資料夾、許可權和卷掛載的提示
- 僅與容器共享您需要的目錄。檔案共享會引入開銷,因為對主機上的檔案的任何更改都需要通知到 Linux 虛擬機器。共享過多檔案會導致 CPU 負載過高和檔案系統性能下降。
- 共享資料夾旨在允許在主機上編輯應用程式程式碼,同時在容器中執行程式碼。對於非程式碼項(如快取目錄或資料庫),如果它們儲存在 Linux 虛擬機器中,使用 資料卷(命名卷)或 資料容器,則效能會好得多。
- 如果您將整個主目錄共享到容器中,MacOS 可能會提示您允許 Docker 訪問主目錄的個人區域,例如您的提醒或下載。
- 預設情況下,Mac 檔案系統區分大小寫,而 Linux 區分大小寫。在 Linux 上,可以建立兩個不同的檔案:
test
和Test
,而在 Mac 上,這些檔名實際上引用同一個底層檔案。這會導致應用程式在開發人員的機器上正常執行(檔案內容共享),但在 Linux 上的生產環境中執行時失敗(檔案內容不同)。為了避免這種情況,Docker Desktop 要求所有共享檔案都以其原始大小寫訪問。因此,如果建立了一個名為test
的檔案,則必須以test
的形式開啟它。嘗試開啟Test
將會導致錯誤“沒有此類檔案或目錄”。類似地,一旦建立了一個名為test
的檔案,嘗試建立另一個名為Test
的檔案將失敗。有關更多資訊,請參見 卷掛載需要為任何
/Users
之外的專案目錄進行檔案共享
代理
Docker Desktop on Mac 支援使用 HTTP/HTTPS 和 SOCKS5 代理.
HTTP/HTTPS 代理可以在以下情況使用
- 登入 Docker
- 拉取或推送映象
- 在映象構建期間獲取工件
- 容器與外部網路互動
- 掃描映象
如果主機使用 HTTP/HTTPS 代理配置(靜態或透過代理自動配置 (PAC)),Docker Desktop 會讀取此配置並自動使用這些設定登入 Docker,以及拉取和推送映象以及容器 Internet 訪問。如果代理需要授權,則 Docker Desktop 會動態地要求開發人員提供使用者名稱和密碼。所有密碼都安全地儲存在作業系統憑據儲存中。請注意,僅支援 Basic
代理身份驗證方法,因此建議使用 https://
URL 為您的 HTTP/HTTPS 代理,以便在網路傳輸過程中保護密碼。Docker Desktop 在與代理通訊時支援 TLS 1.3。
要為 Docker Desktop 設定不同的代理,請開啟手動代理配置並輸入一個 http://proxy:port
或 https://proxy:port
格式的單個上游代理 URL。
要防止開發人員意外更改代理設定,請參見 設定管理.
用於掃描映象的 HTTPS 代理設定使用 HTTPS_PROXY
環境變數設定。
注意
如果您使用的是託管在 Web 伺服器上的 PAC 檔案,請確保為伺服器或網站上的
.pac
副檔名新增 MIME 型別application/x-ns-proxy-autoconfig
。沒有此配置,PAC 檔案可能無法正確解析。
網路
Docker Desktop 使用私有 IPv4 網路提供內部服務,例如 DNS 伺服器和 HTTP 代理。如果 Docker Desktop 選擇的子網與您環境中的 IP 衝突,您可以使用網路設定指定自定義子網。您還可以選擇使用核心網路進行 UDP 設定。這使您可以為 UDP 使用更有效的核心網路路徑。這可能與您的 VPN 軟體不相容。
Docker Engine
Docker Engine 選項卡允許您配置用於使用 Docker Desktop 執行容器的 Docker 守護程式。
您可以使用 JSON 配置檔案配置守護程式。以下是檔案的外觀
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false
}
您可以在 $HOME/.docker/daemon.json
找到此檔案。要更改配置,可以直接從 Docker Desktop 中的儀表板編輯 JSON 配置,或使用您喜歡的文字編輯器開啟並編輯該檔案。
要檢視所有可能的配置選項列表,請參見 dockerd 命令參考.
選擇應用並重啟以儲存您的設定並重啟 Docker Desktop。
構建器
如果您已啟用 Docker Desktop 構建檢視,則可以使用構建器選項卡檢查和管理 Docker Desktop 設定中的構建器。
檢查
要檢查構建器,請找到要檢查的構建器並選擇展開圖示。您只能檢查活動的構建器。
檢查活動構建器將顯示
- BuildKit 版本
- 狀態
- 驅動程式型別
- 支援的功能和平臺
- 磁碟使用量
- 端點地址
選擇不同的構建器
所選構建器部分顯示所選構建器。要選擇不同的構建器
- 在可用構建器下找到要使用的構建器
- 開啟構建器名稱旁邊的下拉選單。
- 選擇使用以切換到此構建器。
您的構建命令現在預設使用所選構建器。
建立構建器
要建立構建器,請使用 Docker CLI。請參見 建立一個新的構建器
刪除構建器
如果滿足以下條件,您可以刪除構建器
構建器不是您的 所選構建器
構建器沒有 與 Docker 上下文關聯.
要刪除與 Docker 上下文關聯的構建器,請使用
docker context rm
命令刪除該上下文。
要刪除構建器
- 在可用構建器下找到要刪除的構建器
- 開啟下拉選單。
- 選擇刪除以刪除此構建器。
如果構建器使用 docker-container
或 kubernetes
驅動程式,則構建快取也將與構建器一起刪除。
停止和啟動構建器
使用 docker-container
驅動程式 的構建器在容器中執行 BuildKit 守護程式。您可以使用下拉選單啟動和停止 BuildKit 容器。
執行構建會自動啟動容器(如果它已停止)。
您只能使用 docker-container
驅動程式啟動和停止構建器。
Kubernetes
Docker Desktop 包含一個獨立的 Kubernetes 伺服器,以便您可以測試將 Docker 工作負載部署到 Kubernetes 上。要開啟 Kubernetes 支援並安裝一個作為 Docker 容器執行的獨立 Kubernetes 例項,請選擇啟用 Kubernetes。
選擇顯示系統容器(高階)以在使用 Docker 命令時檢視內部容器。
選擇重置 Kubernetes 叢集以刪除所有堆疊和 Kubernetes 資源。
有關使用 Docker Desktop 與 Kubernetes 整合的更多資訊,請參見 在 Kubernetes 上部署.
軟體更新
軟體更新選項卡會通知您 Docker Desktop 的任何可用更新。如果有新更新,您可以選擇立即下載更新,或者選擇發行說明選項以瞭解更新版本中包含的內容。
透過清除自動檢查更新複選框來關閉更新檢查。這將停用 Docker 選單中的通知以及 Docker 儀表板上顯示的通知徽章。要手動檢查更新,請選擇 Docker 選單中的檢查更新選項。
要允許 Docker Desktop 在後臺自動下載新更新,請選擇始終下載更新。這會在更新可用時下載更新版本的 Docker Desktop。下載更新後,選擇應用並重啟以安裝更新。您可以透過 Docker 選單或 Docker 儀表板中的更新部分執行此操作。
擴充套件
使用擴充套件選項卡
- 啟用 Docker 擴充套件
- 僅允許透過 Docker Marketplace 分發的擴充套件
- 顯示 Docker 擴充套件系統容器
有關 Docker 擴充套件的更多資訊,請參見 擴充套件.
開發中的功能
在功能控制選項卡中,您可以控制Beta 功能和實驗性功能的設定。
您也可以註冊 開發者預覽計劃從開發中功能選項卡。
Beta 功能
Beta 功能提供對未來產品功能的訪問。這些功能僅用於測試和反饋,因為它們可能會在版本之間發生更改,恕不另行通知,或者完全從未來的版本中刪除。Beta 功能不得用於生產環境。Docker 不提供對 Beta 功能的支援。實驗性功能
在實驗性功能選項卡中,您可以選擇允許功能標誌。這些是 Docker 目前正在試驗的功能。預設情況下,此選項已開啟。
這些功能僅用於測試和反饋,因為它們可能會在版本之間發生更改,恕不另行通知,或者完全從未來的版本中刪除。Docker 不提供對實驗性功能的支援。
通知
使用通知選項卡開啟或關閉以下事件的通知
- 任務和程序的狀態更新
- Docker 公告
- Docker 調查
預設情況下,所有通知都已開啟。您將始終收到錯誤通知以及有關新 Docker Desktop 版本和更新的通知。
通知會短暫地出現在 Docker 儀表板的右下角,然後移至通知抽屜。要開啟通知抽屜,請選擇 。
高階
在高階選項卡中,您可以重新配置初始安裝設定
選擇如何配置 Docker CLI 工具的安裝.
- 系統:Docker CLI 工具安裝在系統目錄下的
/usr/local/bin
中 - 使用者:Docker CLI 工具安裝在使用者目錄下的
$HOME/.docker/bin
中。然後,您必須將$HOME/.docker/bin
新增到您的 PATH。要將$HOME/.docker/bin
新增到您的路徑- 開啟您的 shell 配置檔案。如果您使用的是 bash shell,則為
~/.bashrc
,如果您使用的是 zsh shell,則為~/.zshrc
。 - 複製並貼上以下內容
$ export PATH=$PATH:~/.docker/bin
- 儲存並關閉檔案。重啟 shell 以將更改應用於 PATH 變數。
- 開啟您的 shell 配置檔案。如果您使用的是 bash shell,則為
- 系統:Docker CLI 工具安裝在系統目錄下的
啟用預設 Docker 套接字(需要密碼)。建立
/var/run/docker.sock
,某些第三方客戶端可能使用它與 Docker Desktop 通訊。有關更多資訊,請參見 macOS 的許可權要求.啟用特權埠對映(需要密碼)。啟動特權助手程序,該程序繫結 1 到 1024 之間的埠。有關更多資訊,請參見 macOS 的許可權要求.
有關每個配置和用例的更多資訊,請參見 許可權要求.