联手微软,Docker公司将推出Docker Desktop for WSL 2
微软最新推出的 WSL 2 在架构方面发生了重大的变化:它提供了一个在轻量级 VM 中运行的真正 Linux 内核。
使用真正的 Linux 内核意味着可以在 Windows 上运行 ELF64 Linux 二进制文件。对 Docker 来说绝对是利好消息,因为这意味着 Linux 版本的 Docker 可以直接在 WSL 2 中运行。
不过 Docker 的目标并不止于此,对于这个变化以及这项技术,Docker 公司已将其应用到自家的产品上,并在近日宣布目前正在开发针对 WSL 2 的新版 Docker Desktop,计划于7月发布公开预览版。它将使 Docker 的开发体验体验更友好、以及解锁更多新功能。
Docker 表示微软在 WSL 2 中采取的架构方案和他们对 LinuxKit 和 Hyper-V 的使用方法非常类似,更重要的是,使用真正 Linux 内核的 WSL 2 与 Windows 集成更紧密。
据 Docker 公司的介绍,微软很早就为他们提供了 WSL 2 的早期版本,以便他们评估这项技术,并了解如何和 Docker Desktop for Windows 结合,使它成为在 Windows 上使用 Docker 的最佳方案。
经过测试后,Docker 守护程序在 WSL 2 中运行良好,性能表现也不俗,冷启动时间仅需要大约 2 秒。
Docker 也表示将使用 WSL 2 的集成包来替代 Hyper-V VM,该软件包将提供与当前 Docker Desktop VM 相同的功能:一键设置 Kubernetes、自动更新、透明的 HTTP 代理配置、从 Windows 访问守护程序以及透明绑定 Windows 文件等等。
此集成包将包含运行 Docker 和 Kubernetes 所需的服务器端组件,以及用于和 WSL 中的这些组件交互的 CLI 工具。最终,Docker Desktop 将会引入一项新功能:Linux 工作区(Linux workspaces)。
现在我们使用 Docker Desktop 时,运行守护程序的 VM 完全不透明:虽然我们可以从 Windows 与 Docker 和 Kubernetes API 进行交互,但除了 Docker 容器或 Kubernetes Pod 之外,无法在 VM 中运行任何内容。
但通过整合 WSL 2,可以体验与 Windows 的无缝集成,这对于开发针对 Linux 环境的项目的开发者或者针对 Linux 定制的构建过程具有巨大的影响 —— 意味着开发者无需再维护用于 Linux 和 Windows 两套不同的构建脚本了。
例如,Docker 的开发者现在可以在 Windows 上运行 Linux Docker 守护程序,使用与 Linux 开发者相同的工具和脚本集:
至于性能方面的问题,为了让 WSL 2 有更好的使用体验,微软在性能和资源分配方面付出了巨大的努力:将 VM 设置为使用动态分配内存的方式,并且可以在所有可用的主机 CPU 上进行任务调度,另外,在主机提供的范围内,消耗所需的最低内存。
Docker Desktop 将利用 WSL 2 的这些特性来大幅改进其资源消耗量,它将根据需要使用尽可能少的 CPU 和内存,并且构建容器等 CPU/内存密集型任务将比现在快得多。
得益于和微软的合作,Docker Desktop for WSL 2 将于 7 月发布技术预览版,支持与当前版本的 Docker Desktop 同时运行。
联手微软,Docker公司将推出Docker Desktop for WSL 2相关推荐
- Docker 入门教程(一) - Docker Tutorial
Docker 教程 作者: Jakob Jenkov 原文链接 Docker是一种使用名为Dockerfile的打包规范将应用程序和服务器配置打包为 Docker 镜像的简单方法. Docker 镜像 ...
- Solomon Hykes离开Docker公司,自此仗剑走天涯
Solomon Hykes的成功之路一直崎岖而坎坷.他的Docker创立旅程,始于10年前在巴黎建立的dotCloud,并以今天提出的辞职请求作结.期间,Hykes领导dotCloud由一家PaaS公 ...
- Docker 公司是如何做社区的?
今天看了一个Docker公司是如何做社区的PPT,演讲者是Docker公司的市场部老大.Docker从发布之初就受到了开发者的关注,1.0版本发布的时候Docker就收到了超过460位贡献者的8741 ...
- Docker容器基础(二) - Docker公司的入场
一天天的,PaaS深入人心,Cloud Foundry为首的传统PaaS,开始蓄力基础设施领域的 平台化和PaaS化,于是发现了PaaS中的问题 1 如何给应用打包 Cloud Foundry/Ope ...
- Docker基础认识与docker安装以及环境配置
文章目录 一.什么是Docker 二.常用核心基本概念 1. 镜像(Image) 2. 仓库(Repository) 3. 容器 container(Container): 三.其他基础性概念 1. ...
- Docker之旅(1)-Docker基础
一.Docker 简介 1.1 Docker 概念 Docker 于 2013 年开源,其基于 go 语言开发,是一个开源的 PaaS 服务(Platform as a Service,平台即服务的缩 ...
- 【云原生之企业级容器技术 Docker实战一】Docker 介绍
目录 一.Docker 介绍 1.1 容器历史 1.2 Docker 是什么 1.3 Docker 和虚拟机,物理主机 1.4 Docker 的组成 1.5 Namespace 1.6 Control ...
- Docker精华问答:Docker与虚拟机的区别?| 技术头条
Docker 是个划时代的开源项目,它彻底释放了计算虚拟化的威力,极大提高了应用的维护效率,降低了云计算应用开发的成本!使用 Docker,可以让应用的部署.测试和分发都变得前所未有的高效和轻松! 1 ...
- Docker学习一:Docker简介与安装
前言 本次学习来自于datawhale组队学习: 教程地址为: https://github.com/datawhalechina/team-learning-program/tree/master/ ...
最新文章
- wordpress 常用函数-wpdb类
- Effective Java 阅读笔记——方法
- python介绍和用途-Python --- Python的简介
- Spark-Sql整合hive,在spark-sql命令和spark-shell命令下执行sql命令和整合调用hive
- linux i2c adapter 增加设备_LINUX设备驱动模型分析之四 设备模块相关(DEVICE)接口分析...
- WebSocket 是什么原理?为什么可以实现持久连接?什么情况使用WebSocket
- FAR,FRR,EER
- 子查询 不同情况 mysql
- GitHub、YouTube 们的开源替代品都有了!
- 结构张量 matlab 图像,图像处理中 结构张量(structure tensor)
- 测试用例设计——场景法
- 二维数组(动态规划)
- HTTP 状态码502 深度解析
- 手机号和座机号正则表达式
- mysql表id的数据类型是_MySQL表中的数据类型
- java调用金蝶云接口_调用金蝶web api
- 【Linux】Linux操作的一些基本指令
- utf8ascii编码
- springBoot整合spring security+JWT实现单点登录与权限管理前后端分离--筑基中期
- 鸡肋功能2————将汉字转化为拼音(带声调)