Docker for Windows使用簡介

來源:互聯網
上載者:User

標籤:硬體   代理   標籤頁   images   cli   box   ted   asp.net   接下來   

在上一篇文章中,通過演練指導的方式,介紹了在Docker中運行ASP.NET Core Web API應用程式的過程。本文將介紹Docker for Windows的使用。

先決條件

前兩周時間,Docker發布了Docker for Windows的正式版,於是就可以在Windows下運行Docker容器了。要在Windows下運行Docker,需要滿足以下先決條件:

  • 64位Windows 10 Pro、Enterprise或者Education版本(Build 10586以上版本,需要安裝1511 November更新)
  • 在系統中啟用Hyper-V。如果沒有啟用,Docker for Windows在安裝過程中會自動啟用Hyper-V(這個過程需要重啟系統)

不過,如果不是使用的Windows 10,也沒有關係,可以使用Docker Toolbox作為替代方案。

Docker for Windows的安裝與使用

在Windows 10中,請點擊此處下載Docker for Windows的安裝包,然後開始安裝。正如上面所述,如果Hyper-V沒有啟用,安裝過程會自動啟用Hyper-V,這將需要重新啟動Windows系統。安裝完成後,就可以在Windows下使用Docker了。

啟動Docker for Windows,會在系統托盤部分顯示一條小鯨魚的表徵圖:。在Docker完全啟動之前,小鯨魚背上的小方塊會不停地閃爍變化,等小方塊穩定不變後,表示系統完全啟動成功,此時就可以對Docker的環境進行設定,或者開始執行Docker命令了。

Docker環境的設定

按右鍵系統托盤上的小鯨魚表徵圖,選擇Settings菜單:

此時將開啟Settings對話方塊:

該對話方塊主要包含了針對運行Docker Daemon的虛擬環境的配置,以及對Docker Daemon的配置。包括:

  • Shared Drivers:可以將主機(也就是Windows機器)中的磁碟機共用到Docker Container中
  • Advanced:用於配置運行Docker Daemon的虛擬環境的CPU和記憶體
  • Network:配置Docker的網路環境
  • Proxies:代理的配置
  • Docker Daemon:使用JSON格式的設定,對Docker Daemon進行配置,類似於在Linux環境中使用conf檔案對Docker進行配置

其實,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 8或者8.1:在工作管理員中,選擇“效能”標籤頁,然後在CPU一欄,查看“虛擬化”(Virtualization)一項是否已經啟用
  • 如果是Windows 7,請下載並執行Microsoft Hardware-Assisted Virtualization Detection Tool來查看系統是否滿足條件

同時,還需要確保Windows系統是64位的。有關Docker Toolbox的更多資訊,請參考官方網站的詳細說明。

運行Docker命令

在Docker for Windows成功啟動後,就可以在Windows命令提示字元下執行Docker命令了,也可以在Power Shell中執行Docker命令,看個人喜好吧。Docker CLI的體驗和Linux下是一樣的。

使用Docker for Windows在容器中運行ASP.NET Core Web API應用程式

我們仍然使用前面這篇文章中所發布的那個ASP.NET Core Web API應用程式,也仍然使用那個Dockerfile檔案。現在,首先確保Dockerfile檔案與發布出來的DockerWebAPI應用程式的檔案都在同一個目錄下:

然後執行:

1 docker build -t daxnet/docker-webapi .

將看到以下結果(當然,之前已經執行過一次了,所以基本上每一步的Image都是從緩衝裡取的):

與Linux下編譯Docker Image相比,這裡多了一個安全警告。這是因為我們是在Windows下使用部署在非Windows中的Docker服務來完成的Image的編譯產生,兩套系統中的檔案使用權限設定不同。Docker for Windows建議在編譯產生的Image上對檔案的許可權進行檢查以確保安全。

接下來測試一下剛剛產生的Docker Image。執行:

1 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)與部署。

Docker for Windows使用簡介

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.