说一说windows原生docker及windows Server Container , Hyper Container 之间的关系(学习总结)
前一段时间学习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 之间的关系(学习总结)的更多相关文章
- docker,containerd,runc,docker-shim之间的关系
原文:https://blog.csdn.net/u013812710/article/details/79001463 关于containerd关于containerd的一些详解介绍,请参考cont ...
- windows 屏幕坐标 窗口坐标 客户区坐标 逻辑坐标 设备坐标之间的关系及转换
设置坐标映射 (1)Windows坐标系统 Windows坐标系分为逻辑坐标系和设备坐标系两种,GDI支持这两种坐标系.一般而言, GDI的文本和图形输出函数使用逻辑坐标,而在客户区移动或按下鼠 ...
- 在Linux和Windows的Docker容器中运行ASP.NET Core
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott H ...
- Docker for Windows(四)实践搭建&删除MySQL服务
我们已经下载安装好了Docker for Windows:Docker for Windows(一)下载与安装,也简单了解了Docker常用命令:Docker for Windows(三)Docker ...
- [Tool] Windows 8.1安装SQL Server
[Tool] Windows 8.1安装SQL Server 问题情景 因为工作的关系,需要在Windows 8.1.64Bit设备上安装SQL Server 2012.本来以为是个只要按下一步就可以 ...
- 初识Docker和Windows Server容器
概览 伴随着Windows Server 2016 Technical Preview 3 (TP3)版本的发布,微软首次提供了Windows平台下地原生容器.它集成了Docker对Windows S ...
- 使用Docker for Windows初体验
https://www.baidu.com/link?url=61Kwadwh6h__2Vmjf7lAKVo1RjhsULAqERcMXYnYzkLKrRVpygwBJVnjultH8zbq& ...
- 在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 ...
- Docker for Windows使用简介
在上一篇文章中,通过演练指导的方式,介绍了在Docker中运行ASP.NET Core Web API应用程序的过程.本文将介绍Docker for Windows的使用. 先决条件 前两周时间,Do ...
随机推荐
- 关于javascript面向对象的详解!
认识面向对象 1.面向对象中的概念 一切事物皆对象 对象具有封装和继承特性 信息隐藏 2.基本面向对象 3.函数构造器构造对象 深入了解面向对象 第一种书写格式 第二种书写格式
- PHP Fatal Error: call to undefined function mysql_connect() [duplicate]
You shouldn't use mysql_* functions to start with. They are deprecated as of PHP 5.5. Use mysqli or ...
- virsh创建和恢复快照
virsh创建快照: virsh snapshot-create-as image的名称 snapshot的名称 例如: virsh snapshot-create-as 172.16.1.1_cen ...
- Oracle Minus关键字
Oracle Minus关键字 SQL中的MINUS关键字 SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 ...
- 配置sublime text 3 的Python开发环境
为了在sublime实现像Python自带idle一样的F5交互功能: 首先安装package control然后install Sublime REPL:然后配置 Preference-->P ...
- Virtualbox安装USB2.0/3.0
系统:Ubuntu16.04 软件:Virtualbox5.1 1.打开Virtualbox,不启动虚拟系统. 2.点击设置->USB->启动usb2.0. 3.若发现不能启用,则到官网下 ...
- [转]Python os.path模块
os.path模块 原文链接:http://my.oschina.net/cuffica/blog/33494 basename('文件路径') 去掉目录路径,返回fname文件名 import ...
- windows下安装beautifulsoup4
方法一: pip install beautifulsoup4 方法二: 在官网下载安装包后,放在python目录下--运行cmd--进入bs4安装包路径--输入setup.py install 测试 ...
- JavaScript中的splice方法
splice方法根据传入的不同参数可分别实现删除和插入操作 使用splice(pra1,pra2,pra3)方法,需要为其提供如下参数: 1.pra1为其起始索引(即希望开始添加元素的地方) 2.pr ...
- ALT+TAB切换时小图标的添加 界面透明 屏幕大小 竖行字体 进程信息
一,ALT+TAB切换时小图标的添加 Dlg类中添加变量 protected: HICON m_hIcon; #define IDR_MAINFRAME 128 ICON IDR_MAINFRAME, ...