1. 缘由
2. 准备工作

3. 环境配置准备
3.1电脑环境配置:

3.2查看当前win10版本是不是最新版,如果不是则升级到最新版

查看当前版本,win+r打开运行窗口输入"winver"



3.3进入“程序和功能”,确认对应功能已勾选

说明window10操作系统上安装docker需要开启虚拟化的支持
3.4查看虚拟化是否开启

4. 安装步骤
注意:请以管理员身份打开 PowerShell 工具并运行以下命令

使用 wsl -l -v命令查看本地所有可以用的Linux发行版本

如果执行啥也没有就返回一个wsl的help的帮助使用打印说明你电脑上没有安装WSL支持的Linux发行版本,所以就必须去安装Linux发行版本
4.1启用 WSL 2
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart4.2启用“虚拟机平台”
要在 Windows 10上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart要在 Windows 10上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
4.3设置 WSL 2 为默认值
以管理员身份打开 PowerShell,然后运行以下命令以将 WSL 2 设置为 WSL 的默认版本:
wsl --set-default-version 2
4.4安装 Linux 发行版
安装Linux发行版本的方法用两种:
4.4.1 windows的应用商店中



由于我的电脑是公司的台式机,所以由于网络问题,应用商店打不开,所以我才有下面的方式安装
4.4.2Windows10内置Linux子系统(WSL)镜像导入安装发行版系统
参看:https://www.cnblogs.com/RainFate/p/15744830.html#_label0
4.4.2.1获取发行版的tar文件:(这里以centos7.9为例子)
# 拉取centos 镜像docker pull centos:centos7.9.2009# 创建容器,docker run [imageId] # 列出所有容器找到centOS 的容器IDdocker ps -a# 导出容器生成tar文件docker export -o ./centos.tar [containerId]
4.4.2.2# PowerShell运行
wsl --import CentOS "D:\Program Files (x86)\Centos7" "F:\DownLoad\centos.tar"wsl -l -vwsl -d CentOSwsl -s CentOSwsl --terminate CentOSwsl --unregister CentOS
4.4.2.3更新yum
yum update -y4.4.2.4添加特定用户:略过---这里不配置默认使用root用户
4.4.2.5启动发行版
wsl -d CentOS
4.5为安装的Linux发行版设置WSL的版本为2
wsl --set-version CentOS 2
5.安装Docker Desktop配置
注意:此方法仅适用于 Windows 10 操作系统专业版、企业版、教育版和部分家庭版!
电脑网络最好不要使用公司网络,因为公司网络有安全策略限制,否则Docker Desktop软件安装启动打开界面一直在卡着转圈圈,这就很尴尬,所以使用家庭网络或者使用自己手机开一个热点链接就可以出现如下界面:

资源配置:启用Linux发行版配置和开启wsl2的系统勾选上即可:

这里的选择Linux发行版的资源选择配置看上面----4.4安装 Linux 发行版,安装之后即可在这里选择到了
配置自己的阿里云镜像仓库地址:



"registry-mirrors": ["你自己的阿里云镜像加速地址"]
注意:如果你不配置这个加速地址上面使用docker拉取一个centOs7.9的镜像就会超时拉取不下来,docker安装的时候,不管是windo10安装docker还是在vm虚拟机上安装docker都要配置这个加速地址,你可以选择其它国内的加速地址,只要网络能通,可以拉取到就可以了,只是我觉得阿里云的这个好用,还有免费的个人docker镜像仓库可以使用,就很方便的,配置了这个配置方便我们pull一些docker镜像,不让由于网路问题拉取不到你想要的镜像而超时,或者你知道如何翻墙,这个另当别论。
6. 构建最小jre镜像和应用镜像
Win+R输入cmd以管理方式运行,事先准备好以下文件:
Dockerfile_jre1.8.0_271.txt:构建最小jre8镜像的dockerfile的文件
Dockerfile.txt:构建业务镜像含有最小jre8的镜像和skywaliking-agent探针的业务基础镜像可以在java微服务项目中直接引入,skywaliking-agent这个的使用请参看我的文章:

5.1构建最小jre8
Dockerfile_jre1.8.0_271.txt内容如下:

执行:docker build -f Dockerfile_jre1.8.0_271.txt -t zlf:jre8 .
5.2构建业务基础镜像
Dockerfile.txt内容如下:

执行:docker build -f Dockerfile.txt -t zlf:jre8 .
上面两步骤执行结果:

可以将这个两个镜像推送到自己的阿里云镜像仓库
参看:
https://www.runoob.com/docker/windows-docker-install.html
https://docs.microsoft.com/zh-cn/windows/wsl/install
https://blog.csdn.net/li1325169021/article/details/124285018
https://blog.csdn.net/keyiis_sh/article/details/113751658
https://blog.csdn.net/weixin_44481159/article/details/117674298?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-117674298-blog-113751658.pc_relevant_aa_2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-117674298-blog-113751658.pc_relevant_aa_2&utm_relevant_index=2
https://www.cnblogs.com/RainFate/p/15744830.html#_label0
https://www.cjavapy.com/article/2089/
https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile
https://www.it1352.com/2238129.html