天天看点

Windows 11 安装 Docker Desktop

作者:opendotnet

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 系统配置要求:

  • 对于

    x64

    系统:版本 1903 或更高版本,内部版本为 18362 或更高版本。
  • 对于

    ARM64

    系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
例如:

Windows 10 May 2020(2004)

Windows 10 May 2019(1903)

Windows 10 November 2019(1909)

Windows 11

。注意:低于 18362 的版本不支持 WSL 2。使用 Windows Update 助手更新 Windows 版本。
  • 具有

    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

”,选择【确定】。

Windows 11 安装 Docker Desktop

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

发行版

有了

WSL

必要的虚拟化技术

,接下来去

Microsoft Store

下载并安装

Linux

发行版,这里以

Ubuntu 22.04.2 LTS

为例。

注意:去商店(

Microsoft Store

)安装的

Linux

发行版只能安装在

C

盘。
  • 4.1

    Microsoft Store

    搜索

    linux

    ,选择

    Ubuntu 22.04.2 LTS

Windows 11 安装 Docker Desktop

Microsoft Store 搜索 linux

  • 4.2

    Ubuntu 22.04.2 LTS

    详情:
Windows 11 安装 Docker Desktop

ubuntu 详情

  • 4.3 点击【安装】按钮,等待安装完成。
Windows 11 安装 Docker Desktop

安装 ubuntu

  • 4.4 安装完以后在

    Windows Terminal

    中点开

    Ubuntu

    ,按照提示初次设置用户名和密码,注意用户名不支持大写。
Windows 11 安装 Docker Desktop

ubuntu 安装完成

  • 4.5 使用 WSL2

最后显示

Installation successful!

就说明安装成功!整个过程挺简单的,毕竟是 WSL(Windows 的子系统),对 Windows 用户很友好。

Windows 环境安装 Docker Desktop

下载 Docker Desktop

注意选择

OS

平台下载相应的

Docker Desktop

(下载地址 =>

https://docs.docker.com/desktop/

),下载后以【管理员】身份运行

Docker Desktop

执行安装操作。

Windows 11 安装 Docker Desktop

下载 docker

安装 Docker Desktop

Docker Desktop

安装好后,启动运行:

Windows 11 安装 Docker Desktop

docker start

配置 Docker Desktop

  • 点击设置【Settings】
Windows 11 安装 Docker Desktop

General

  • 选择【Docker Engine】添加如下配置:
Windows 11 安装 Docker Desktop

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】按钮,等待配置生效并重启完成。

Windows 11 安装 Docker Desktop

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

的相关操作。