在上一篇文章中,經過演練指導的方式,介紹了在Docker中運行ASP.NET Core Web API應用程序的過程。本文將介紹Docker for Windows的使用。html
前兩週時間,Docker發佈了Docker for Windows的正式版,因而就能夠在Windows下運行Docker容器了。要在Windows下運行Docker,須要知足如下先決條件:web
不過,若是不是使用的Windows 10,也沒有關係,可使用Docker Toolbox做爲替代方案。docker
在Windows 10中,請點擊此處下載Docker for Windows的安裝包,而後開始安裝。正如上面所述,若是Hyper-V沒有啓用,安裝過程會自動啓用Hyper-V,這將須要從新啓動Windows系統。安裝完成後,就能夠在Windows下使用Docker了。windows
啓動Docker for Windows,會在系統托盤部分顯示一條小鯨魚的圖標:。在Docker徹底啓動以前,小鯨魚背上的小方塊會不停地閃爍變化,等小方塊穩定不變後,表示系統徹底啓動成功,此時就能夠對Docker的環境進行設置,或者開始執行Docker命令了。api
右鍵單擊系統托盤上的小鯨魚圖標,選擇Settings菜單:緩存
此時將打開Settings對話框:安全
該對話框主要包含了針對運行Docker Daemon的虛擬環境的配置,以及對Docker Daemon的配置。包括:網絡
其實,Docker for Windows的安裝過程會在Hyper-V中建立一臺用於運行Docker Daemon的Linux虛擬機,這個對話框中的不少配置也就是針對該虛擬機所做出的配置。當配置發生更改後,Docker for Windows會從新啓動(小鯨魚背上的小方塊又會動起來),這個過程其實就是這臺Linux虛擬機的配置進行動態調整和重啓的過程。例如,從下圖能夠看到,我將我本身的Docker設置爲1個CPU和1GB的內存,這個配置會應用到Hyper-V的這臺虛擬機上:性能
若是在Windows 10之前版本的Windows中安裝Docker Toolbox,就須要確保Windows系統支持硬件虛擬化技術(HVT):測試
同時,還須要確保Windows系統是64位的。有關Docker Toolbox的更多信息,請參考官方網站的詳細說明。
在Docker for Windows成功啓動後,就能夠在Windows命令提示符下執行Docker命令了,也能夠在Power Shell中執行Docker命令,看我的喜愛吧。Docker CLI的體驗和Linux下是同樣的。
咱們仍然使用前面這篇文章中所發佈的那個ASP.NET Core Web API應用程序,也仍然使用那個Dockerfile文件。如今,首先確保Dockerfile文件與發佈出來的DockerWebAPI應用程序的文件都在同一個目錄下:
而後執行:
docker build -t daxnet/docker-webapi .
將看到如下結果(固然,以前已經執行過一次了,因此基本上每一步的Image都是從緩存裏取的):
與Linux下編譯Docker Image相比,這裏多了一個安全警告。這是由於咱們是在Windows下使用部署在非Windows中的Docker服務來完成的Image的編譯生成,兩套系統中的文件權限設置不一樣。Docker for Windows建議在編譯生成的Image上對文件的權限進行檢查以確保安全。
接下來測試一下剛剛生成的Docker Image。執行:
docker run -it -p 8080:5000 daxnet/docker-webapi
將獲得下面的效果:
測試一下:
效果跟前一篇文章的效果同樣。
本文對Docker for Windows進行了簡單的介紹,並使用上一篇文章的案例,在Docker for Windows上運行了ASP.NET Core Web API應用程序。後文我還將介紹有關Docker使用的一些內容,還會繼續結合ASP.NET Core Web API來說解RESTful服務的容器化(Dockerization)與部署。