【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

Docker Desktop for WSL 2 将于 7 月发布预览版本

  • 2019-06-19
  • 本文字数:2041 字

    阅读完需:约 7 分钟

Docker Desktop for WSL 2将于7月发布预览版本

Docker 的目标之一就是在桌面环境中提供使用容器的最佳体验,无论是在 Windows、Mac 还是 Linux 上工作的用户都可以获得尽可能接近 Native 的体验。


为了实现这一目标,我们花了很多时间与微软和苹果提供的软件栈一起工作。2016 年,我们引入了 Windows Linux 子系统 (WSL),此后,我们一直在密切关注,以便在产品中更好得利用它。


最初,WSL 给人的印象是在努力模仿 Linux 内核上的 Windows,但是由于 Windows 和 Linux 之间存在的根本差异,很多东西无法做到与 Native Linux 相同实现,而这意味着它无法直接运行在 Docker 引擎和 Kubernetes WSL 内部。而 Docker Desktop 开发了一个使用 Hyper-V vm 和 LinuxKit 的替代解决方案,以实现用户期望的无缝集成。


刚刚,微软宣布了一个 WSL 2 的主要架构变化:他们没有使用仿真,而是提供了一个运行在轻量级 VM 中的真正的 Linux 内核。这种方法在架构上非常接近于我们今天使用的 LinuxKit 和 Hyper-V,但是比 Docker 更轻量级,并且能够与 Windows 更紧密地集成。Docker 守护进程在其上运行得很好,性能表现优异,在我们开发人员的机器上,从冷启动到在 WSL 2 中运行只需大约 2 秒。对此,我们感到很兴奋,也很高兴和大家宣布:我们正在开发 Docker Desktop for WSL 2 的新版本,并计划在 7 月份进行公开预览。它将使得 Docker 容器开发的体验更丰富,由于 WSL 2 适用于 Windows 10 家庭版,所以 Docker Desktop 也适用于 Windows 10 家庭版。

与微软合作

为了使 Docker Desktop 成为 Windows 上使用 Docker 的最佳方式,我们携手微软一起合作。微软提供了 WSL 2 的早期版本,以便评估这项技术是否适合我们的产品,同时进行一些反馈。我们使用了不同的方法构建原型,所以接下来想和大家分享一下我们未来的工作。

未来的 Docker Desktop

我们使用 WSL 2 集成包替换了当前使用的 Hyper-V VM。这个集成包提供与当前 Docker Desktop VM 相同的功能:Kubernetes 1-click setup、自动更新、透明 HTTP 代理配置、从 Windows 访问守护进程、透明绑定 Windows 文件挂载等等。



这个集成包包含了运行 Docker 和 Kubernetes 所需的服务器端组件,以及用于与 WSL 中组件交互的 CLI 工具。

Docker Desktop 新特性:Linux Workspaces

使用 Docker Desktop 时,运行守护进程的 VM 是完全不透明的:您可以在 Windows 中与 Docker 和 Kubernetes API 交互,但是除了 Docker 容器或 Kubernetes pod 之外,不能在 VM 中运行任何东西。


使用 WSL 2 集成,仍然可以体验到与 Windows 的无缝集成,不过运行在 WSL 内部的 Linux 程序也可以做到这一点。这对于开发针对 Linux 环境的项目的开发者或者针对 Linux 定制的构建过程具有巨大的影响,他们不再需要同时维护 Linux 和 Windows 两套不同的构建脚本了。


例如,Docker 开发人员可以在 Windows 上使用 Linux Docker 守护程序,可以使用与 Linux 开发人员相同的工具和脚本集:



使用 Docker Desktop technical preview、WSL 2 和 VS Code remote 开发 Docker 守护进程


此外,WSL 的绑定挂载将支持 inotify 事件,并且具有与本地 Linux 机器几乎相同的 I/O 性能,通过 I/O-heavy toolchains 解决了 Docker Desktop 的痛点问题之一。Node.js、PHP 和其它 Web 开发工具也可以从这一特性中获益。


结合 Visual Studio Code “Remote to WSL”,Docker Desktop Linux workspaces 可以在 Windows 上的 IDE 运行完整的 Linux 工具链,以便在本地机器上构建容器。

性能

针对 WSL 2,微软在性能和资源分配方面投入了大量的精力:VM 设置使用动态内存分配,并且可以在所有主机 CPU 上安排工作,在主机提供的内存范围内消耗所需内存,并与运行在主机上的 Win 32 进程协作。


Docker Desktop 利用这一点极大地提高了资源消耗,可以根据需要任意使用 CPU 或内存,并且一些 CPU/ 内存密集型的任务,运行速度要比之前快。


此外,冷启动之后,启动 WSL 2 发行版和 Docker 守护进程的时间也快得惊人,在我们的开发笔记本电脑上仅需 2 秒钟,而在当前版本的 Docker Desktop 上仅需 10 秒钟。如果我们将守护进程的启动推迟到第一次 API 调用,并在守护进程没有运行任何容器时自动停止它,就可以达到优化电池寿命的目的。

零配置绑定安装支持

针对 Docker Desktop(尤其是在企业环境中),用户通常都会考虑这样一个问题,即 Windows 文件绑定挂载的可靠性。如果当前实现依赖于 Samba Windows 服务,那么它可能会被停用、被企业 GPOs 阻塞、被第三方防火墙阻塞等。


而使用 WSL 2 的 Docker Desktop 可以解决这个问题,通过 WSL 特性来实现 Windows 文件的绑定挂载,提供开箱即用的“IT Just Works”体验。

Docker Desktop for WSL 2 将于 7 月开放预览

通过和微软的合作,我们编写了核心功能来部署集成包、运行守护进程并将其公开给 Windows 进程,支持绑定挂载和端口转发。


Docker Desktop for WSL 2 预览版将于 7 月开放下载,它将与 Docker Desktop 当前版本并行运行,用户仍可处理现有项目。


原文链接:https://engineering.docker.com/2019/06/docker-hearts-wsl-2/


2019-06-19 09:4534155
用户头像

发布了 497 篇内容, 共 308.9 次阅读, 收获喜欢 1907 次。

关注

评论

发布
暂无评论
发现更多内容

【专栏 03】数据仓库、数据集市、数据湖,你的企业更适合哪种数据管理架构?

星环科技

数据架构

基于公共信箱的全量消息实现

百度Geek说

大数据 即时通讯 企业号 4 月 PK 榜 公共信箱

戴尔科技园动力计划,携手中南高科赋能中小企业数字化转型

科技热闻

Databend Parser 快速入门

Databend

企业如何两步实现数据资产化?

星环科技

数据资产化

用友iuap 让企业数智化能力深入、让业务价值浅出

用友BIP

用友 用友iuap 用友技术大会 数智底座

浅谈测试用例设计 | 京东云技术团队

京东科技开发者

测试 测试用例 测试用例设计 企业号 4 月 PK 榜

分布式存储技术(上):HDFS 与 Ceph的架构原理、特性、优缺点解析

星环科技

hdfs 分布式存储 Ceph

分布式技术剖析

星环科技

分布式

竞争焦点转向数智底座 用友能否再引领

用友BIP

用友iuap 用友技术大会 升级企业数智化底座

字节二面:HashMap线程不安全体现在哪里?

Java你猿哥

Java 线程 ssm 架构师 HashMap底层原理

聊聊「低代码」的实践之路

Java 架构 低代码

大语言模型的本质:会思考的狗、聪明的马和随机鹦鹉

FN0

AIGC 大语言模型

如何在微服务下保证事务的一致性 | 京东云技术团队

京东科技开发者

架构 微服务 事务 一致性 企业号 4 月 PK 榜

企业数据平台建设的基石:构建统一的数据存算能力

星环科技

存算能力

分布式存储技术(下):宽表存储与全文搜索引擎的架构原理、特性、优缺点解析

星环科技

分布式 全文搜索

从入门到精通,超详细的程序员Java学习路线指南

Java你猿哥

Java 数据库 Web ssm 死磕 Java 基础

构建系列之webpack窥探上

江湖修行

前端 Web webpack cli 构建

统一、飞鹤等快消龙头企业,如何抓住未来10年数智化的机遇?

用友BIP

用友iuap 用友技术大会 快消行业

请查收!一份2023年程序员不得不看的自救提升指南(彩色终极版)

Java你猿哥

Java 面试 JVM 面经

硬核!阿里P8耗时6月打造的架构师速成手册,颠覆你对架构师的认知

Java你猿哥

架构 分布式 ssm 软件架构 架构师

MySQL8.0.32的安装与配置

Java你猿哥

Java MySQL ssm Java工程师

15个值得收藏的数据可视化开源工具

2D3D前端可视化开发

数据可视化 数据可视化工具 前端数据可视化 数据可视化设计 数据可视化软件

如何创造数据资产价值?如何对内赋能业务运营,对外创造市场价值?

星环科技

数据资产 数据要素流通

电信及互联网行业数据安全内控审计建设实践 | 盾见

极盾科技

数据安全

这一秒,困扰了程序员 50 年!

Java你猿哥

Java 程序员 ssm 计算机

Rust-Shyper:基于 Rust 语言的高可靠、开源嵌入式 Hypervisor

openEuler

Linux rust 操作系统 虚拟机 嵌入式

电力行业信息化年会 华为解读“低碳、安全、发展”新思路

YG科技

华为ISDP数字化现场作业,如何助力电力行业安监风险管控?

YG科技

关于聚合根,领域事件的那点事---深入浅出理解DDD | 京东云技术团队

京东科技开发者

DDD 企业号 4 月 PK 榜 聚合根 领域事件

校企共建|阿里云与西安电子科技大学人才培养交流会顺利举行

云布道师

校企合作

Docker Desktop for WSL 2将于7月发布预览版本_服务革新_Simon Ferquel_InfoQ精选文章