写点什么

微软与 Docker 发布 Windows Server 容器预览版

  • 2015-09-16
  • 本文字数:1186 字

    阅读完需:约 4 分钟

现在可以在容器内运行专门针对 Windows 操作系统的软件了。 Windows Server 2016 技术预览版 3 是第一个支持该项技术的 Windows 版本。 Windows Server 容器提供了和 Linux 容器非常类似的功能,但是它需要在 Windows 生态系统的上下文中。Docker 也发布了它的技术预览版,展示了它是如何管理 Windows 容器的。

正如 Docker 工程经理 Arnaud Porterie所述,由于操作系统的根本差异,Docker 的Linux 和Windows 功能集将不可能完全相同。尽管如此,大部分Docker 命令可以在这两种容器技术上都能够正常工作。Dockerfile 和docker build 命令都已经支持。不过,docker push 命令在这次发布的版本中还不支持。

微软构建了 hcsshim ,它为 Docker 执行 Windows Server 上的容器提供了执行驱动。所谓的执行驱动是 Docker 中的一个模块,用于调用内核代码来执行容器。它的每种实现都针对一个特定的操作系统,因此为 Windows Server 容器提供的 Docker 守护进程无法运行 Linux 镜像。

PowerShell 也能够管理Windows Server 容器。目前一个工具(如PowerShell)创建的容器,对于另一个工具(即Docker)是不可见的。二者之间的差异解释了这样的行为。差异的范围,从大小写这种简单的问题,到条件竞争这种复杂的场景。这对于长期来说不是一个期望的行为,因此在后续发展道路上,这些事情可能会有所改变。

微软还推出了Hyper-V 容器,它像是在Hyper-V 分区中的Windows Server 容器。Hyper-V 容器用Windows Server 容器的速度和效率,交换了更好的隔离性和安全性。在多租户系统场景中,Hyper-V 容器就是一种优选的解决方案。

微软,和Docker、Google 等行业巨头,都是开放容器倡议(Open Container Initiative,OCI)的创始成员。开放容器倡议旨在创建“围绕着容器格式和运行时的开放行业标准”。Docker 捐赠了 runC ,将其容器格式和运行时提供给开放容器倡议。开放容器规范可以在GitHub 上进行阅读。

尝试这种技术最简单的方法是遵循快速入门指南在Azure 上运行Windows Server 容器。Azure 已经提供了Windows Server 2016 技术预览版3 的镜像。也可以在 Hyper-V 虚拟机或者 Windows Server 2016 技术预览版核心安装中尝试 Windows Server 容器。

Windows Server 容器仍然在开发中,因此值得去看一看已知问题,例如因为反恶意软件解决方案导致的容器启动速度慢等。 Windows Server 容器论坛是提问的好地方,有微软工程师会回答一些问题。Lumagate 公司的首席技术官 Kristian Nese 正在撰写以 Windows 世界中的容器为话题的系列文章

查看英文原文: http://www.infoq.com/news/2015/09/windows-server-containers


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-09-16 19:003038

评论

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

图的存储结构与方法(二)

乔乔

7月月更

多线程&高并发(全网最新:面试题+导图+笔记)面试手稳心不慌

冉然学Java

Java 编程 多线程并发 高并发系统 资料分享

深入浅出边缘云 | 1. 概述

俞凡

架构 边缘计算 网络 深入浅出边缘云

IntelliJ IDEA使用

GalaxyCreater

Java IDEA

OpenIM重大优化-消息按需加载 一致性缓存 uniapp发布

Geek_1ef48b

作为一名后台开发人员,你必须知道的两种过滤器

C++后台开发

后台开发 后端开发 Linux服务器开发 C/C++后台开发 C/C++开发

Docker安装Elasticsearch、ik分词器、可视化工具

宁在春

Docker Elastic Stack 7月月更

SpringBoot项目使用Tomcat为什么让大厂禁止?

Java程序员

Java 程序员 Sprint Boot

面试官:MySQL 数据库查询慢,除了索引问题还可能是什么原因?

Java全栈架构师

Java MySQL 数据库 面试 后端

【Go实现】实践GoF的23种设计模式:观察者模式

元闰子

Go 设计模式 观察者模式 Go 语言

做一个有职业操守的软件匠人

Bruce Talk

技术 敏捷 TDD Agile

OpenIM重大升级-群聊读扩散模型发布 群管理功能升级

Geek_1ef48b

阿里二面:什么是CAS?

Java永远的神

Java 程序员 面试 程序人生 CAS

12张图+6K字图解ZGC垃圾回收器及调优技巧

程序员小毕

程序员 面试 程序人生 ZGC JVM

类的基础

GalaxyCreater

python小知识-代码规范最佳实践

AIWeker

7月月更 pyhon小知识

Java开发环境配置 / Vscode搭建

攻城狮杰森

Java jdk 7月月更

7大专题详解SpringBoot,阿里这套SpringBoot全栈笔记真香

Java永远的神

Java 程序员 面试 程序人生 springboot

自动驾驶产品化竞备开启:百度Apollo如何定义量产车?

脑极体

界面设计四大原则

空城机

设计模式 7月月更

基于 Web SDK 实现视频通话场景 | 声网 SDK 教程

RTE开发者社区

视频 SDK 教程

全新出品!Github总榜排行第七的SpringCloud生态全栈笔记我粉了

Java全栈架构师

Java 程序员 面试 微服务 SpringCloud

参与开源社区还有证书拿?

玩转Devop和研发效能DevStream/DevLake

GitHub 开源 开发者 证书

OSI模型第一层:物理层,基石般的存在!

wljslmz

物理层 网络技术 OSI模型 7月月更

mysql进阶(十九)SQL语句如何精准查找某一时间段的数据

No Silver Bullet

MySQL 7月月更 精确查找

大规模团队中的敏捷测试实践

刘冉

敏捷测试

李宏毅《机器学习》丨7. Conclusion(总结)

AXYZdong

7月月更

@Entity 里面的 JPA 注解

Damon

7月月更

springMvc参数获取

沃德

Java 7月月更

一时跳槽一时爽,一直跳槽一直爽?

KEY.L

7月月更

Vue Router 守卫

程序员海军

Vue 7月月更

微软与Docker发布Windows Server容器预览版_Windows_João Miranda_InfoQ精选文章