說一說windows原生docker及windows Server Container , Hyper Container 之間的關係(學習總結)

来源:http://www.cnblogs.com/kubishishu/archive/2016/05/01/5450720.html
-Advertisement-
Play Games

前一段時間學習netcore的時候解除到了docker,感覺真是不錯的技術。百度了不少教程。因為我用windows就下載安裝了一下試試。但是沒有安裝成功,才發現 需要安裝virtualbox虛擬機,與我的hyper-v衝突。後來看新聞出了windows版的docker,把virtualbox換成了h ...


         前一段時間學習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 2016 Technical...
WindowsServerCore    10.0.14300.1000  ContainerImag... Container OS Image of Windows Server 2016 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 。語言最好切換到英文,因為英文文章的更新日期是四月份,漢語翻譯文章的日期是二月份,相差倆個月 ,裡面的東西很多都不一樣了。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • IO就是對磁碟的讀/寫。 一次IO,就是發出指令+執行命令。 磁碟IO的時間=尋道時間+數據傳輸時間 單盤不能併發IO。 radis多個盤併發IO。 影響IO的最大因素是尋道時間。 影響電腦速度:cpu、記憶體、IO. 提高電腦IO的方法:將機械硬碟換為液態硬碟。 cpu:可以將電腦轉速想象成一個人的 ...
  • couchbase作為新興的NOSQL資料庫,可堪使用的資料少的可憐,更別提中文資料了,基本上就是在官網的手冊和論壇上查詢所需資料,所以這要求有一定的英語基礎,辭彙量不是問題,不認識的直接百度,關鍵是語法和耐心要過關,我從剛接觸couchbase開始天天啃英文手冊也是讀得煩躁不安,所以耐心十分重要。 ...
  • SSRS報表參數是可單值或者多值。之前有個小伙伴問我,如果要傳多值怎麼傳。然後我試了在各個參數之間,放換行符放逗號分號等都未能解決問題,最後想明白這個參數接受的應該是非字元類型,很大可能是數組,然後我試了下用Split來拆分字元串成數組,果斷成功。 這裡還有坑爹的情況,沒辦法直接傳數組過來報表,所以 ...
  • 查看當前資料庫的所支持的資料庫引擎以及預設資料庫引擎 查看表的存儲引擎 直接更改存儲引擎 如下命令: 多表改變引擎: 首先我目前平臺上承載的大部分項目是讀多寫少的項目,而MyISAM的讀性能是比Innodb強不少的。 MyISAM的索引和數據是分開的,並且索引是有壓縮的,記憶體使用率就對應提高了不少。 ...
  • SQL Server 2008有180天的試用期,過期後會提示“評估期已過”的提示。 1、進入SQL Server安裝中心: 2、選擇“維護”-“版本升級” 3、輸入密鑰: 其他的根據提示操作。 附SQL Server序列號: 開發版: PTTFM-X467G-P7RH2-3Q6CG-4DMYB企業 ...
  • 使用dbca建庫時遇到ORA-01501: CREATE DATABASE failed這個錯誤,檢查告警日誌,發現有下麵錯誤信息: SMON: enabling tx recoveryFri Apr 29 14:06:25 HKT 2016replication_dependency_tracki... ...
  • 1.使用theano調用relu激活函數提示''It looks like your version of theano is out of date'' bug信息顯然是提示更新theano版本,可是一看官網最新版本就是0.7.0,使用pip更新後也提示已經是最新版本。 經過檢查後發現,原來the ...
  • 在保密你的伺服器和數據,防備當前複雜的攻擊,SQL Server有你需要的一切。但在你能有效使用這些安全功能前,你需要理解你面對的威脅和一些基本的安全概念。這篇文章提供了基礎,因此你可以對SQL Server里的安全功能充分利用,不用在面對特定威脅,不能保護你數據的功能上浪費時間。 SQL Serv ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...