windows下Docker Desktop安裝管理


檢查要求

  • Windows 10 企業版、專業版或教育版 (必須windows10 1903版本以上)版本號 18362.1049+18363.1049+ ,次版本#大於.1049。最好是最新版(新版windows可以hype-v wsl2 vmvare共存,但安卓模擬器目前還沒穩定的共存版本)。建議使用wsl2,安裝包容量會比起hype-v小很多 。
  • Windows開啟wsl2,建議 Windows 10 2004(版本號不低於 19041.264),可wsl2與vmvare共存。
  • CPU 支持並開啟虛擬化(Intel VT-cAMD SVM)。
  • 最少 4 GB 內存。

對於專業版、企業版、教育版可以使用docker desktop wsl2模式,此處無需開啟Hype-v

對於Win10 家庭版,Win10 19041.264之前版本,及 Win7 8用戶,可以使用docker desktop Hype-v 后端。

修改安裝盤

Docker Desktop 默認安裝到 C:\Program Files\Docker 並不可更改,這樣很不友好,可以通過軟連接的方式改變Docker Desktop 默認安裝盤。

mklink /J "C:\Program Files\Docker" "D:\Program Files\Docker"

限制wsl2運行最大內存

WSL 是 Microsoft 提供的一項功能,可以使開發人員能夠直接在 Windows 上運行 GNU/Linux 環境,無需修改,無需傳統虛擬機或雙引導設置,減少了開發人員的使用復雜度

在 Docker Desktop 使用了 WSL 2 中的動態內存分配特性,極大地提高了資源消耗。這意味着,Docker Desktop 僅使用其所需的 CPU 和內存資源量,同時使 CPU 和內存密集型任務(例如構建容器)運行得更快。

但WSL2目前一個弊端,可能WSL2 vm會分配所有可用內存,並最終導致操作系統和其他應用程序的內存不足。

所以需要對WLS2內存和CPU資源進行限制,在 cmdpowshell 終端中

wsl --shutdown
fsutil file createNew %UserProfile%/.wslconfig 0
notepad "%UserProfile%/.wslconfig"

在用戶目錄創建一個文件.wslconfig ,編輯 .wslconfig

[wsl2]
memory=3GB   # 限制wsl2的虛擬機最大內存
processors=4  # 限制wsl2使用的處理器數量
swap=0      # 不使用交換文件

安裝Docker Desktop

完成上面的操作,可以安裝Docker Desktop了。從Docker Desktop網站下載安裝Docker Desktop for Windows,大於500M。

安裝步驟基本上點擊操作即可,沒有什么難度

鏡像路徑遷移

當使用了WSL2作為Docker Desktop后端引擎時,WSL 2 Docker-Desktop-Data 的VM磁盤鏡像通常在 %USERPROFILE%\AppData\Local\Docker\wsl\data\ext4.vhdx 路徑下,docker-desktop通常在%LOCALAPPDATA%/Docker/wsl 路徑下,因為鏡像的大小及一些交換文件,通常會占用大量C盤空間,可以改變其存儲位置。

wsl --list -v

輸入上述命令可以看到如下內容

  NAME                STATE          VERSION
* docker-desktop         Stopped         2
  docker-desktop-data      Stopped         2

docker-desktop 替換了之前使用的 Hyper-V VM 實現 Docker Desktop。這處理容器的引導和管理。

docker-desktop-data 是存儲docker鏡像和配置的地方;實際上是對 Hyper-V 以前使用的虛擬硬盤的直接替換。

從這里可以看出Docker Desktop使用了WSL2作為后端引擎時,實際上整個應用作為WLS2的兩個子系統進行的。可以通過遷移WSL2系統鏡像的存儲位置來改變Docker霸占C盤不可轉移的弊端。

導出wsl系統鏡像

wsl --export docker-desktop docker-desktop.tar
wsl --export docker-desktop-data docker-desktop-data.tar

刪除Docker Desktop wsl子系統,此操作會自動刪除 ext4.vhdx 文件,故需要先導出一份備份

wsl --unregister docker-desktop
wsl --unregister docker-desktop-data

導入重新創建wsl Docker Desktop子系統

wsl --import docker-desktop d:\{new_path} docker-desktop.tar
wsl --import docker-desktop-data d:\{new_path} docker-desktop-data.tar

完成后,啟動Docker服務,如果服務正常,可以刪除掉 docker-desktop.tardocker-desktop-data.tar

無法啟動

我在使用windows時,會安裝冰點還原,因為windows10 以上需要 冰點還原 8.38以上,我這里使用 8.38.020.4676 版本時,在開啟還原狀態時,Docker無法正常啟動,在關閉還原時,可以正常啟動。更換 8.62.020.5630。后正常。 8.38.020.4676 是2017年的版本,當時Docker對windows兼容並不好,而8.38.020.4676 是2020年發行的版本,目前在使用中並未發現異常。 8.38.020.4676 與 8.62.020.5630為網上常見的純凈的破解版了,所以按需選擇使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM