這三十天中,花了蠻多篇幅在講解何謂虛擬化技術,如虛擬機或容器,先來回顧一下有哪些內容吧
虛擬機介紹篇:
虛擬機基礎介紹 (1), 虛擬機基礎介紹 (2)
Hyper-V介紹篇:
Hyper-V (1), Hyper-V (2), Hyper-V (3)
Docker與容器介紹篇:
Docker與容器基礎介紹 (1), Docker與容器基礎介紹 (2), Docker與容器基礎介紹 (3)
今天將介紹WSL與Docker Desktop這兩個非常實用的工具
在WSL出來前,很多人會採用雙系統的方式同時安裝Windows與Linux系統,畢竟有許多軟體是必須跑在原生的Windows/Linux各自系統上才會便利、順暢,但這樣做的缺點也很明顯,無法同時跑Windows與Linux
微軟也自知在伺服器或軟體開發領域上實在比不過Linux,秉持著打不過就加入的精神,在Windows系統中支援了Linux的System Call,即時將其轉譯成Windows的格式,這也就是最早的WSL1
因為沒有一個實際的Linux核心,所以這樣的架構難以維護或擴展,所以WSL2基於了Hyper-V虛擬機技術,實際運行了真正的Linux核心,以下是WSL1與WSL2的比較表
參考資料
安裝WSL,開啟Powershell,輸入以下指令
wsl --install
重新啟動電腦就可以看到WSL已經成功安裝
安裝失敗的人,必須要先去BIOS設定開啟Intel的VT-X或AMD的AMD-V (硬體的虛擬化加速)
如果要從其他終端機進入WSL,必須以管理員身份運行終端機,然後輸入wsl
即可
離開WSL,則輸入exit
列出可用的Linux發行版
wsl --list --online
預設是安裝Ubuntu,如果想要切換成其他發行版
wsl --install <Distribution Name>
輸入username與密碼
wsl --distribution <Distribution Name> --user <User Name>
列出已安裝的Linux發行版,有*
代表是預設的使用版本,也就是輸入wsl會進入的
wsl --list --verbose
Docker Desktop是Docker的GUI管控程式,可以在Windows/MacOS/Linux下運行
安裝Docker Desktop:
https://www.docker.com/products/docker-desktop/
以下是我以前安裝Docker Desktop遇到的一些問題:
https://hackmd.io/@frakw/ByRdYshan
Docker Desktop可以使用Hyper-V或WSL2做為後端,不過基本上推薦使用WSL2即可
GUI左側可以切換要觀看Image或Container列表
Windows Sandbox 是Windows11推出的輕量級桌面環境,可以快速啟動一個完全乾淨的Windows系統
安裝:
Enable-WindowsOptionalFeature -FeatureName "Containers-DisposableClientVM" -All -Online
重新啟動後就安裝完成了
我實測開啟Sandbox大約十幾秒內就可以開起來,比起傳統的VM快了不少
很適合拿來測試新開發的軟體能不能在其他電腦上運行
在全新的系統上安裝vscode
不過蠻可惜的是無法保存進度與運行多個Sandbox
重開後可以看到,剛剛安裝的vscode已經不見
無法多開