win10家庭版使用docker

win10 家庭版福音,终于可以使用docker了


文章目录

  • win10家庭版使用docker
  • WSL (Windows Subsystem for Linux)
  • 安装WSL
  • WSL2
  • 前提
  • 安装
  • 安装Docker Desktop
  • 下载
  • 安装
  • 设置
  • docker 的 使用
  • 查看
  • 生成镜像
  • 启动容器


WSL (Windows Subsystem for Linux)

适用于Linux的Windows子系统,提供了一个由微软开发的Linux兼容的内核接口

无论使用 WSL 1 还是 WSL 2,我们都需要开启「适用于 Linux 的 Windows 子系统」的附加功能:

  • 以管理员身份打开 PowerShell 终端
  • 运行下面的命令:
$ Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
  • 或者:(二选一即可)
  • 控制面板 --> 程序和功能 --> 启用或关闭 windows 功能 --> 勾选适用于 Linux 的 windows 子系统

WSL docker 关系 wsl1 docker_windows 10

安装WSL

  • 搜索 Microsoft Store ,在商店中搜索 wsl ,选择你想要的系统和版本,下载,安装
  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8TkufwLC-1619769288193)(C:/Users/86177/AppData/Roaming/Typora/typora-user-images/image-20210430143719711.png)]
  • 下载成功后,我们需要对刚刚这一发行版进行初始化。在开始菜单中,没有意外的话,你应该看到刚刚下载完成的 Ubuntu 快捷方式,我们点击打开 Ubuntu,等待初始化完成即可。(初始化过程会将下载好的 Linux 发行版的文件解压缩,并存储在电脑上供你使用,往往会需要 1 分钟甚至更多。)

WSL2

前提

  • WSL2 需要 先 安装 WSL
  • 版本:WSL 2 目前只能在 Windows 10 版本 1903、1909 和 2004 中使用(其中 1903 和 1909 仅支持 x64 系统
查看版本:
win + R
输入
winver

WSL docker 关系 wsl1 docker_WSL docker 关系_02

安装

  • 命令
$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
$ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  • 根据提示重启电脑
  • 管理 Linux 子系统使用 WSL 或 WSL2
    需要用管理员身份打开 PowerShell 终端
  • 查看子系统
wsl -l --verbose
# VERSION 就是 wsl 的版本

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UF4n6jTW-1619769288194)(C:/Users/86177/AppData/Roaming/Typora/typora-user-images/image-20210430145524357.png)]

  • 设置 子系统 使用的WSL版本
wsl --set-version <Distro> 2
# <Distro> 是子系统的NAME
# 后面的数字是版本号
wsl --set-default-version 2
# 把所有子系统设置为 WSL2

安装Docker Desktop

下载

打开链接,直接下载

https://www.docker.com/products/docker-desktop

WSL docker 关系 wsl1 docker_windows 10_03

安装

双击打开 Docker Desktop Installer.exe,勾选 WSL2选项,安装

设置

  • 在右下角隐藏图标中找到 docker 图标


WSL docker 关系 wsl1 docker_windows 10_04



  • 右键 --> setting --> 勾选 Expose daemon on tcp://localhost:2375 without TLS


WSL docker 关系 wsl1 docker_docker_05



docker 的 使用

查看
  • 启动 Docker Desktop


WSL docker 关系 wsl1 docker_Windows_06


  • 查看 docker 版本号
  • PowerShell(以管理员身份运行)
docker -v

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mpdmQafI-1619769288197)(C:/Users/86177/AppData/Roaming/Typora/typora-user-images/image-20210430151605355.png)]

  • Linux 子系统
docker -v

WSL docker 关系 wsl1 docker_Docker_07

  • 查看镜像
  • 命令
docker images
  • PowerShell(以管理员身份运行)


WSL docker 关系 wsl1 docker_docker_08



  • Linux 子系统


WSL docker 关系 wsl1 docker_windows 10_09



  • Docker Desktop


WSL docker 关系 wsl1 docker_Docker_10


  • 查看容器
  • 命令行:无需多言了,其实 **PowerShell(管理员)和 子系统控制台(sudo)**打通了
  • Docker Desktop


WSL docker 关系 wsl1 docker_WSL docker 关系_11



生成镜像

需要终端命令操作:PowerShell(管理员)和 子系统控制台(sudo),自行参考 docker 文档

启动容器
  • 终端命令操作 自行参考 docker 文档
  • Docker Desktop 操作如图:


WSL docker 关系 wsl1 docker_docker_12



  • 注:宿主机挂载目录 既可以是 Windows 系统目录,也可以是 Linux 子系统目录