前一段时间学习netcore的时候解除到了docker,感觉真是不错的技术。百度了不少教程。因为我用windows就下载安装了一下试试。但是没有安装成功,才发现 需要安装virtualbox虚拟机,与我的hyper-v冲突。后来看新闻出了windows版的docker,把virtualbox换成了hyper-v。也算小惊喜吧,心想如果能出原生的windows 版docker就好了。试着 注册了个docker账号 ,并申请内测(打肿脸充胖子),一个月过去了,也没见给发邮件。

于是又百度了些资料,发现了 Windows Containers Documentation 这一个网站,这不就是windows版的docker吗,读了之后才知道,原来是真正的windows 原生 docker,基于windows内核的,不再是原来的linux虚拟机。但是目前只能运行在windows server2016 和nanoserver上,win10上我试着安装了一下,提示“The Windows daemon requires Windows Server 2016 Technical Preview 5 build 14300 or later”。winnserver2016感觉有点庞大 ,就装了轻量版的nanoserver,费了九牛二虎之力总算能用了。(看文章特别是教程还是得一步步慢慢的看,急不得,我当时就是用到啥看啥,安装时遇到了多问题)。

windows版的docker提供了两套 容器技术,一种是server container,这种和linux上的docker差不多,几个容器可以共享主机内核,任务管理器里面可以看到对应进程,隔离级别比较低。

另一种就是 Hyper Container ,这一种就是在外边又加了一层虚拟机,这种能提供内核级别的隔离,容器运行在自己的内核中,主机任务管理器查看不到,其实就是一个小虚拟机,这种部署起来也不麻烦,和第一种差不多,只需要加上“--isolation=hyperv”参数就行 比如“docker run --isolation=hyperv nanoserver ping localhost -t ”。  其中naoserver是OS镜像。下面我们说一说 容器镜像

   容器镜像分两种,一种是os镜像 另一种就是普通的容器镜像, os镜像由 微软提供里面包含os核心组件。由微软提供。现在有两套os镜像:

Name                 Version          Source           Summary
---- ------- ------ -------
NanoServer 10.0.14300.1010 ContainerImag... Container OS Image of Windows Server Technical...
WindowsServerCore 10.0.14300.1000 ContainerImag... Container OS Image of Windows Server Technical...

另一种就是普通的容器镜像,这种镜像基于os镜像或者其他镜像。

还有就是就是学习过程中遇到的两个问题 :

第一个是运行nanosever上docker时候比如docker run -it... docker attach...的时候会报错 需要用docker的远程管理 ,具体见https://docs.docker.com/engine/security/https/

第二个是以hyper-v容器(--isolation=hyperv)的方式运行的时候提示not enough storage......我现在也不知道什么原因。

更多内容大家还是参考 Windows Containers Documentation 。语言最好切换到英文,因为英文文章的更新日期是四月份,汉语翻译文章的日期是二月份,相差俩个月 ,里面的东西很多都不一样了。

说一说windows原生docker及windows Server Container , Hyper Container 之间的关系(学习总结)的更多相关文章

  1. docker,containerd,runc,docker-shim之间的关系

    原文:https://blog.csdn.net/u013812710/article/details/79001463 关于containerd关于containerd的一些详解介绍,请参考cont ...

  2. windows 屏幕坐标 窗口坐标 客户区坐标 逻辑坐标 设备坐标之间的关系及转换

    设置坐标映射    (1)Windows坐标系统 Windows坐标系分为逻辑坐标系和设备坐标系两种,GDI支持这两种坐标系.一般而言, GDI的文本和图形输出函数使用逻辑坐标,而在客户区移动或按下鼠 ...

  3. 在Linux和Windows的Docker容器中运行ASP.NET Core

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott H ...

  4. Docker for Windows(四)实践搭建&删除MySQL服务

    我们已经下载安装好了Docker for Windows:Docker for Windows(一)下载与安装,也简单了解了Docker常用命令:Docker for Windows(三)Docker ...

  5. [Tool] Windows 8.1安装SQL Server

    [Tool] Windows 8.1安装SQL Server 问题情景 因为工作的关系,需要在Windows 8.1.64Bit设备上安装SQL Server 2012.本来以为是个只要按下一步就可以 ...

  6. 初识Docker和Windows Server容器

    概览 伴随着Windows Server 2016 Technical Preview 3 (TP3)版本的发布,微软首次提供了Windows平台下地原生容器.它集成了Docker对Windows S ...

  7. 使用Docker for Windows初体验

    https://www.baidu.com/link?url=61Kwadwh6h__2Vmjf7lAKVo1RjhsULAqERcMXYnYzkLKrRVpygwBJVnjultH8zbq& ...

  8. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  9. Docker for Windows使用简介

    在上一篇文章中,通过演练指导的方式,介绍了在Docker中运行ASP.NET Core Web API应用程序的过程.本文将介绍Docker for Windows的使用. 先决条件 前两周时间,Do ...

随机推荐

  1. 《与小卡特一起学Python》 Code2

    下边是一个猜数字的小游戏: 几乎所有语言都这样做的…… here we go! import random secret = random.randint(1,99) guess = 0 tries ...

  2. php : 基础(5)

    函数 函数的定义: 形式: function 函数名 ( [$形参1] [,$形参2] [,.... ] ){ //函数体...... } 说明: 定义时使用的形参,其实就是一个变量--只能在该函数内 ...

  3. 【网摘】CURL常用命令

    原文地址: http://www.thegeekstuff.com/2012/04/curl-examples/ 下载单个文件,默认将输出打印到标准输出中(STDOUT)中 curl http://w ...

  4. iOS 消息推送报错NSCocoaErrorDomain Code=3000

    转自: http://www.cnblogs.com/zxykit/p/5207498.html Xcode7推送报错.Error Domain=NSCocoaErrorDomain Code=300 ...

  5. XMLHttpRequest.status状态码

    XMLHttpRequest.status状态码1xx-信息提示 这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. 100-继续. 101-切换协议. 2xx-成 ...

  6. VIM小技巧

    1.复制多行 vi编辑器中的整行(多行)复制与粘贴就非常必要了. 1.复制 1)单行复制 在命令模式下,将光标移动到将要复制的行处,按"yy"进行复制: 2)多行复制 在命令模式下 ...

  7. PBOC~PPT-补充A(转)

    qPBOC简介PBOC 3.0非接交易包括:非接PBOC和qPBOC.非接PBOC流程与接触式无异,仅命令交互方式改变,故不再赘述. qPBOC - 快速借记/贷记,交易特点:目录选择PPSE使用“2 ...

  8. JS实现页面打印

    [原文链接] 1.js实现(可实现局部打印) <input id="btnPrint" type="button" value="打印" ...

  9. MySQL DCL 整理

    DCL(Data Control Language)数据库控制语言  授权,角色控制等GRANT 授权REVOKE 取消授权

  10. WPF进度条系列②旋转小圆圈

     写在之前: 关于WPF的样式,我也是学习了很多朋友的文章才有了下面的东西,因为时间有些久远 & 备份的链接也都不在了. 所以,究竟是看过哪些文章,也是记不清楚了…… 请见谅. ------- ...