前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Windows上的Linux容器预览

Windows上的Linux容器预览

作者头像
lyx1995
发布2018-01-10 11:57:16
2.5K0
发布2018-01-10 11:57:16

微软正在为Windows Server的下一个重大更新做准备(查看微软博客最近补充的这篇文章),并且有些新功能对于Docker用户来说是非常令人兴奋的。其中最重要的增强之处就是Docker现在可以使用Hyper-V技术在Windows上运行Linux容器。

在Windows上运行Docker Linux容器需要一个最小的Linux内核和承载容器进程的用户空间。这正是LinuxKit工具包的设计目标:创建可以提供Linux容器功能的安全、精简、可移植的Linux子系统。

我们一直忙于为Windows上的Docker Linux容器提供LinuxKit支持,并有一个工作预览供您尝试。这仍然是一项正在进行的工作,需要通过最近发布的“Windows Server 预览版”或者Windows 10 预览版来体验。

使用LinuxKit在Windows上运行Docker Linux容器

以下教程已经在Windows 10和Windows Server 预览版16278和16281上进行了测试。

请确保在开始之前安装Windows版Docker(Windows 10)或Docker 企业版(Windows Server 预览版)。

安装Docker和LinuxKit

以管理员身份在PowerShell中运行以下命令即可以获取LinuxKit的预览版本:

代码语言:powershell
复制
$progressPreference = 'silentlyContinue'
代码语言:powershell
复制
mkdir "$Env:ProgramFiles\Linux Containers”
代码语言:powershell
复制
Invoke-WebRequest -UseBasicParsing -OutFile linuxkit.zip https://github.com/friism/linuxkit/releases/download/preview-1/linuxkit.zip
代码语言:powershell
复制
Expand-Archive linuxkit.zip -DestinationPath "$Env:ProgramFiles\Linux Containers\."
代码语言:powershell
复制
rm linuxkit.zip

接着获取Docker守护进程的主分支版本,它对Windows上的Linux容器提供了预览支持:

代码语言:powershell
复制
Invoke-WebRequest -UseBasicParsing -OutFile dockerd.exe https://master.dockerproject.org/windows/x86_64/dockerd.exe

启动一个新的Docker守护进程监听一个单独的管道,并使用默认安装中的一个单独的存储位置:

代码语言:powershell
复制
$Env:LCOW_SUPPORTED=1
代码语言:powershell
复制
.\dockerd.exe -D --experimental -H "npipe:////./pipe//docker_lcow" --data-root c:\lcow

尝试一下

运行一个Linux容器:

代码语言:powershell
复制
docker -H "npipe:////./pipe//docker_lcow" run -ti busybox sh

这样Docker就创建了一个最小的虚拟机,它运行着LinuxKit实例并且托管着linux容器!

由于这是一个早期预览,所以存在一些限制,但是基本的Docker操作(比如pull和run)是完全没问题的。

展望未来

Windows Server预览版和Windows上的Linux容器的Docker支持都还处于早期预览模式。在正式发布版中,Windows上的Docker Linux容器将同时改善Windows开发人员和服务器管理员的使用体验。开发人员可以通过在同一个系统上并行运行两个平台的容器来更轻松地构建和测试混合的Windows / Linux Docker应用程序。

喜欢Windows的IT管理员很快就能够通过Windows上的Docker Linux容器轻松运行(大部分)Linux独有的软件,例如HAProxy和Redis。举例来说,Windows上的Docker Linux容器将使得在Windows Server上建立Docker企业版和Universal Control Plane(依赖于某些仅限于Linux的组件)变得更为简单。

我们希望这个基于LinuxKit的演练能够让你开始探索。欢迎反馈!有关一般帮助和入门内部版本,请使用Windows反馈中心(Windows 10)或Windows Server 预览版技术社区。对于Windows上LinuxKit和Docker支持Linux容器的问题,请前往GitHub上的Windows版Docker问题跟踪器。如果你做出了一些很酷的东西,请一定要在推特上告诉我们!

更多资源

下载Docker Windows 10版Docker Windows Server版

了解有关Docker企业版的更多信息

在DockerCon上参与关于Windows上的Linux容器和LinuxKit的讨论

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档