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

在Windows系统上的Linux容器

作者头像
ghplvh
发布2018-01-09 10:02:26
4.8K0
发布2018-01-09 10:02:26

微软正在为Windows Server的下一个重大更新做准备(查看最近补充的微软博客文章),某些新功能更是让Docker用户为之兴奋的。最重要的改进之一就是,Docker可以通过Hyper-V技术在Windows系统中立即运行Linux容器了。

在Windows上运行Docker,只需要一个很小的Linux内核和用户空间来承载容器进程。这正是LinuxKit工具包的设计初衷——创建安全的、精简的、可移植的Linux子系统。就是让 Linux 容器功能可以相容于所有的非Linux平台。

我们一直致力于在Windows系统上对Docker 所需的LinuxKit工具包进行原型设计,并且已经成功设计出可以供您测试的工作预览版。这仍是一项正在进行中的工作,我们计划在最近公布的“Windows Server Insider”版本或“Windows 10 Insider builds”版本中对其进行测试。

使用LinuxKit在Windows上运行Docker

以下操作已经在“Windows 10”和“Windows Server Insider build 16278和16281“版本中进行了测试。

在开始之前,请务必安装Docker for Windows(Windows 10)或者Docker Enterprise Edition(Windows Server Insider)。

安装Docker和LinuxKit

只需要在PowerShell中运行以下命令(具有管理员权限),就可以使用由LinuxKit构建的预览体验版了:

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

现在构建一个Docker守护进程的主分支,其中包含Windows系统上的Linux容器的预览支持:

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

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

代码语言:javascript
复制
$Env:LCOW_SUPPORTED=1
.\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刚刚启动了一个最小的虚拟机,而这个虚拟机就是一个托管在Linux容器中运行LinuxKit的实例!

注:因为这个演示案例是一个早期的预览体验版,所以具有局限性,但是并不影响Docker进行拉取镜像或者运行容器等基础操作。

写在最后

“Windows Server Insider builds” 和 “Docker support for Linux containers on Windows”都是早期的预览体验模式。当正式版本发布的时候,Windows开发者和服务器管理员在Windows系统中使用Docker的体验会得到进一步提升。届时,开发人员就能够在同一系统上同时运行两个平台的容器,更轻松地构建、测试混合在Windows / Linux 两个操作系统中的Docker应用程序。

喜欢Windows系统的IT管理员很快就可以通过运行在Windows系统上的Docker,来轻松地运行大部分Linux的独有软件,如HAProxy和Redis。譬如,在Windows系统上的Docker,将使Windows 服务器上的Docker企业版和可视化管理界面(依赖某些Linux独占的组件)的设置步骤变得更加简单。

我们希望通过这个LinuxKit的演示能够让你开始实验,我们欢迎您进行反馈,对于一般帮助和入门内测版本,请使用“Windows反馈中心(Windows 10)”或者“Windows Server Insiders技术社区”。对于Windows上LinuxKit和Docker容器的问题,请在GitHub上提交 Docker for Windows 的问题申请,可以通过Twitter让我们知道,你发现了什么。

更多资源

下载Docker for Windows 10Docker for Windows Serve

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

加入“在Windows上使用Docker容器和LinuxKit”的交流 @DockerCon

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