1.前言
以前我们介绍了Docker的一些基本概念和常用命令,但因为Docker是在Linux系统下创建的资源分离机制,所以它无法在Windows系统下直接运行。这次我们将用3分钟的时间介绍一下如何在Win10系统下运行Docker。
2.下载Docker
用户可以根据自己的系统在Docker官网选择Mac[1]或Windows[2],因为Docker可以在Mac系统中安装后可以直接运行,这里就不再赘述。
安装完Docker,并注册个人账号,再双击启动它,你会发现并不像你想得那么顺利。错误信息如下图所示:
Docker启动失败
这是因为Docker无法在Windows系统中直接运行,而需要创建一个Windows系统中的Linux虚拟机(VM)为Docker的正常运行搭建好底层依赖。虽然官方文档[3]提供了hyper-V和WSL2两种解决方案,但是WSL2是基于hpyer-V在WSL1的升级版,其功能,安装方式也简单方便,因此作者就选择了WSL2的后端方式来运行Docker。
3.安装WSL2
WSL,Windows Subsystem for Linux,含义就是在Windows系统下Linux的子系统。只需要三步就可以在系统中为Docker安装WSL2了,请注意目前WSL2支持在Windows10 2004以上的版本。
3.1 开启WSL2功能
首先,打开Powershell命令提示符,运行命令先查看网上所有的子系统, 再选择你想要选择的系统,这里我们将选择Ubuntu来进行安装。
- ## 查看list
- wsl --list --online
- ## 安装Linux distribution
- wsl --install -d Ubuntu
查看WSL列表
安装成功后,结果返回会让你创建UNIX的用户名和密码:
创建用户名和密码
细心的你会发现命令提示符左上方的logo已经变成了Ubuntu的了。
3.2 安装更新包
安装成功后,还需要下载Linux安装更新包,具体操作需要参考Microsoft[4]官方文档根据你自己系统的版本选择合适的更新包。
3.3 设置默认版本
打开命令提示符,设置WSL2为Linux distribution的默认版本:
- wsl --set-default-version 2
3.4 设置WSL配置文件
因为WSL默认配置会占用计算机高达80%的内存空间,为了避免这种情况,最好可以设置一下配置文件。
按下Windows + R,搜索%UserProfile%打开user的资源管理文件路径,创建并自定义.wslconfig文档。用记事本打开并输入相关参数进行配置:
- [wsl2]
- # 设置内存为2G,主要是服务docker
- memory=2GB
- # CPU 最大占用个数
- processors=2
- # 不设置WSL2虚拟机分配的交换空间
- swap=0
- # 允许将WSL2的端口转发到主机
- localhostForwarding=true
4.检查Docker设置
成功安装好Linux distribution后,还需要在docker desktop中设置一下关于WSL2的基本参数才能确保Docker的成功运行。
首先,需要在通用设置下,勾选使用WSL2基础的引擎,如图所示:
基于WSL2引擎
其次,需要在资源中设置WSL整合,此操作是帮助你在拥有多个WSL时可以整合组成部分的。
设置WSL整合资源
最后,重启docker desktop,你会看到成功启动的界面。
成功界面
5.总结
有些软件在系统中为了成功地运行,确实需要一些先决条件。不管是参考具体的官方文档还是搜索一些避雷的经验贴,安装成功并使用后,你会发现这些环境的搭建是一劳永逸的,快尝试在你的Windows系统中运行Docker吧!之后我们还会持续分享Docker的学习经验,敬请期待。