Desktop 一般常見問題
我可以離線使用 Docker Desktop 嗎?
是的,您可以離線使用 Docker Desktop。但是,您無法存取需要有效網際網路連線的功能。此外,任何需要您登入的功能在離線使用 Docker Desktop 或在隔離環境中都無法運作。這包括
- 學習中心中的資源
- 將映像檔推送或拉取到 Docker Hub
- 映像檔存取管理
- 靜態弱點掃描
- 在 Docker 儀表板中檢視遠端映像檔
- 設定開發環境
- 使用BuildKit時的 Docker 建置。您可以透過停用 BuildKit 來解決此問題。執行
DOCKER_BUILDKIT=0 docker build .
以停用 BuildKit。 - Kubernetes(第一次啟用 Kubernetes 時會下載映像檔)
- 檢查更新
- 應用程式內診斷(包括自我診斷工具)
- 傳送使用統計資訊
如何連線到遠端 Docker Engine API?
要連線到遠端 Engine API,您可能需要提供 Docker 用戶端和開發工具的 Engine API 位置。
Mac 和 Windows WSL 2 使用者可以透過 Unix Socket 連線到 Docker Engine:unix:///var/run/docker.sock
。
如果您正在使用像Apache Maven之類的應用程式,這些應用程式需要DOCKER_HOST
和DOCKER_CERT_PATH
環境變數的設定,請指定這些變數以透過 Unix Socket 連線到 Docker 執行個體。
例如
$ export DOCKER_HOST=unix:///var/run/docker.sock
Docker Desktop Windows 使用者可以透過**命名管道**連線到 Docker Engine:npipe:////./pipe/docker_engine
,或透過此 URL 的**TCP Socket**連線:tcp://localhost:2375
。
詳細資訊,請參閱Docker Engine API。
如何從容器連線到主機上的服務?
主機的 IP 位址會變更,如果您沒有網路存取權,則沒有 IP 位址。建議您連線到特殊 DNS 名稱 host.docker.internal
,它會解析為主機使用的內部 IP 位址。
如需更多資訊和範例,請參閱如何從容器連線到主機上的服務。
我可以將 USB 裝置透通到容器嗎?
Docker Desktop 不支援直接 USB 裝置透通。但是,您可以使用 USB over IP 將常見的 USB 裝置連線到 Docker Desktop VM,然後再轉發到容器。如需更多詳細資訊,請參閱將 USB/IP 與 Docker Desktop 搭配使用。
如何在沒有管理員權限的情況下執行 Docker Desktop?
Docker Desktop 僅在安裝時需要管理員權限。安裝完成後,執行它不需要管理員權限。但是,非管理員使用者若要執行 Docker Desktop,必須使用特定的安裝程式旗標進行安裝,並且符合特定先決條件,這些先決條件會因平台而異。
若要在 Mac 上執行 Docker Desktop 而不需管理員權限,請透過命令列安裝並傳遞 —user=<userid>
安裝程式旗標
$ /Applications/Docker.app/Contents/MacOS/install --user=<userid>
然後,您可以使用指定的使用者 ID 登入您的機器,並啟動 Docker Desktop。
**注意**
啟動 Docker Desktop 之前,如果
~/Library/Group Containers/group.com.docker/
目錄中已存在settings.json
檔案,當您選擇**完成**時,您會看到一個**完成 Docker Desktop 設定**視窗,提示您需要管理員權限。為避免這種情況,請確保在啟動應用程式之前,刪除先前安裝遺留的settings.json
檔案。
**注意**
如果您使用的是 WSL 2 後端,請先確定您符合 WSL 2 的最低版本需求。否則,請先更新 WSL 2。
若要在 Windows 上執行 Docker Desktop 而不需管理員權限,請透過命令列安裝並傳遞 —always-run-service
安裝程式旗標。
$ "Docker Desktop Installer.exe" install —always-run-service