Windows 環境安裝 WSL2
WSL 簡介
WSL
全稱是
Windows Subsystem for Linux
,适用于
Linux
的
Windows
子系統,可讓開發人員按原樣運作
GNU/Linux
環境,包括大多數指令行工具、實用工具和應用程式,且不會産生傳統虛拟機或雙啟動設定開銷。
簡單的說就是
WSL
能讓你在不安裝
Linux
或者
VM
(虛拟機)的情況下體驗雙系統!
關于 WSL 更多資訊,請檢視 => https://learn.microsoft.com/zh-cn/windows/wsl/about 比較 WSL 版本,請檢視 => https://learn.microsoft.com/zh-cn/windows/wsl/compare-versions
Windows 系統配置要求:
- 對于
系統:版本 1903 或更高版本,内部版本為 18362 或更高版本。x64
- 對于
系統:版本 2004 或更高版本,内部版本為 19041 或更高版本。ARM64
例如:、
Windows 10 May 2020(2004)
、
Windows 10 May 2019(1903)
或
Windows 10 November 2019(1909)
。注意:低于 18362 的版本不支援 WSL 2。使用 Windows Update 助手更新 Windows 版本。
Windows 11
- 具有
虛拟化技術支援的計算機;Hyper-V
關于虛拟化技術說明:
虛拟化技術(
Virtualization Technology
,簡稱
VT
),這種技術簡單來說就是讓可以讓一個
CPU
工作起來就像多個
CPU
并行運作,進而使得在一台電腦内可以同時運作多個
OS
作業系統。
英特爾(Intel)
和
AMD
的大部分
CPU
均支援 VT 技術:
-
名稱為特爾(Intel)
;VT-x
-
名稱為AMD
;AMD-V
VT
開啟之後對
VM
的性能有較大的提高。(比如:
VMware、Hyper、安卓模拟器
等)
參考:https://zhuanlan.zhihu.com/p/394990397
檢查 Windows 版資訊
檢查
Windows
版本及内部版本号,選擇【Windows 徽标鍵 + R】,然後鍵入“
winver
”,選擇【确定】。
winver
Windwos 安裝 WSL2
說明:以下操作均以【管理者】身份打開或
Windows PowerShell
,輸入指令執行。
Windows Terminal
此處以
Windows Terminal
為例,操作步驟如下:
1、啟用 WSL
不管您想要使用哪個版本的
WSL
,都首先需要啟用它。
Windows Terminal
輸入指令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
2、啟用 “虛拟機平台”
WSL2
需要啟用
Windows 10
的 “虛拟機平台” 特性。它獨立于
Hyper-V
,并提供了一些在
Linux
的
Windows
子系統新版本中可用的更有趣的平台內建。
-
上啟用虛拟機平台:Windows 10(2004)
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
-
上啟用虛拟機平台:Windows 10(1903,1909)
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
說明:此步驟為了確定所有相關部件配置生效,您應該在此時重新開機系統,否則可能會發不符合預期的情況。
3、設定 WSL2 為預設值
Windows Terminal
輸入以下指令,将
WSL2
設定為
WSL
的預設版本:
wsl --set-default-version 2
4、安裝一個 Linux
發行版
Linux
有了
WSL
和
必要的虛拟化技術
,接下來去
Microsoft Store
下載下傳并安裝
Linux
發行版,這裡以
Ubuntu 22.04.2 LTS
為例。
注意:去商店()安裝的
Microsoft Store
發行版隻能安裝在
Linux
盤。
C
- 4.1
搜尋Microsoft Store
,選擇linux
Ubuntu 22.04.2 LTS
Microsoft Store 搜尋 linux
- 4.2
詳情:Ubuntu 22.04.2 LTS
ubuntu 詳情
- 4.3 點選【安裝】按鈕,等待安裝完成。
安裝 ubuntu
- 4.4 安裝完以後在
中點開Windows Terminal
,按照提示初次設定使用者名和密碼,注意使用者名不支援大寫。Ubuntu
ubuntu 安裝完成
- 4.5 使用 WSL2
最後顯示
Installation successful!
就說明安裝成功!整個過程挺簡單的,畢竟是 WSL(Windows 的子系統),對 Windows 使用者很友好。
Windows 環境安裝 Docker Desktop
下載下傳 Docker Desktop
注意選擇
OS
平台下載下傳相應的
Docker Desktop
(下載下傳位址 =>
https://docs.docker.com/desktop/
),下載下傳後以【管理者】身份運作
Docker Desktop
執行安裝操作。
下載下傳 docker
安裝 Docker Desktop
Docker Desktop
安裝好後,啟動運作:
docker start
配置 Docker Desktop
- 點選設定【Settings】
General
- 選擇【Docker Engine】添加如下配置:
Docker Engine
json
配置資訊如下:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"dns": [
"8.8.8.8",
"8.8.4.4"
],
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [
"https://hub.atguigu.com"
],
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://mirror.ccs.tencentyun.com",
"https://docker.mirrors.ustc.edu.cn",
"https://cr.console.aliyun.com/"
]
}
添加配置後,點選左下角的【Apply & restart】按鈕,等待配置生效并重新開機完成。
Docker Engine2
終端指令驗證 Dcoker 是否安裝成功
接下來我們打開
Windows Terminal
,輸入指令:
docker version
輸出如下資訊:
Client:
Cloud integration: v1.0.29
Version: 20.10.22
API version: 1.41
Go version: go1.18.9
Git commit: 3a2c30b
Built: Thu Dec 15 22:36:18 2022
OS/Arch: windows/amd64
Context: default
Experimental: true
Server: Docker Desktop 4.16.3 (96739)
Engine:
Version: 20.10.22
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 42c8b31
Built: Thu Dec 15 22:26:14 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.14
GitCommit: 9ba4b250366a5ddde94bb7c9d1def331423aa323
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
或者輸入指令:
docker info
輸出資訊如下:
Client:
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc., v0.10.0)
compose: Docker Compose (Docker Inc., v2.15.1)
dev: Docker Dev Environments (Docker Inc., v0.0.5)
extension: Manages Docker extensions (Docker Inc., v0.2.17)
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc., 0.6.0)
scan: Docker Scan (Docker Inc., v0.23.0)
Server:
Containers: 7
Running: 3
Paused: 0
Stopped: 4
Images: 30
Server Version: 20.10.22
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9ba4b250366a5ddde94bb7c9d1def331423aa323
runc version: v1.1.4-0-g5fd4c4d
init version: de40ad0
Security Options:
seccomp
Profile: default
Kernel Version: 5.10.16.3-microsoft-standard-WSL2
Operating System: Docker Desktop
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: 13.59GiB
Name: docker-desktop
ID: SRPD:RTAI:YAGO:44HL:DPFW:KUPZ:RPYW:OX3X:VBZP:24GQ:YFVN:NPLX
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http.docker.internal:3128
HTTPS Proxy: http.docker.internal:3128
No Proxy: hubproxy.docker.internal
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5000
hub.atguigu.com
127.0.0.0/8
Registry Mirrors:
https://registry.docker-cn.com/
http://hub-mirror.c.163.com/
https://mirror.ccs.tencentyun.com/
https://docker.mirrors.ustc.edu.cn/
https://cr.console.aliyun.com/
Live Restore Enabled: false
看到上面輸出的資訊,說明
Windows
環境的
Docker Desktop
就安裝完成了,此處是使用
WSL2
安裝的
linux
發行版,我們可以
linux
原生環境體驗
Docker
的相關操作。