本篇主要講解在Docker容器中運行.Net Framework控制檯應用程序的詳細步驟。算是Docker容器的入門示例。docker
打開VS建立一個Console Application,以下圖Image-1所示:windows
打開Program.cs,在main函數中寫入一行代碼,在控制檯輸出一條消息,以下圖Image-2所示:函數
運行控制檯程序獲得以下輸出結果,會輸出一條信息,和當前機器的computer name,以下圖Image-3所示:工具
在添加Dockerfile文件以前讓咱們簡單瞭解一下Dockerfile文件的做用。Dockerfile是一個文本文件,包含用戶能夠在命令行上調用的全部命令來建立一個Image,他是Docker daemon在建立image時調用的命令列表。Dockerfile包含了Docker運行應用程序所需的全部信息,要運行的基本Docker Image,項目代碼的位置,它所具備的任何依賴關係以及在啓動時要運行的命令。用一句話來總結就是:Docker daemon經過讀取dockerfile中的內容來建立鏡像(Image)。post
右鍵工程添加Dockerfile文件(這塊你們必定要注意,添加的Dockerfile文件必定不要有任何後綴名!!!)學習
在Dockerfile文件中咱們添加以下三行命令網站
(1). FROM microsoft/windowsservercore ui
經過FROM指令來指定咱們所要使用的基本鏡像.net
(2). ADD bin/Release/ /命令行
經過ADD指令咱們將build的應用程序添加到容器的跟文件夾中
(3). ENTRYPOINT HelloDocker.exe
經過ENTRYPOINT指令咱們指定在容器啓動時要運行的應用程序。
打開cmd命令行工具,進入到Dockerfile所在的文件夾,鍵入以下命令:
docker build -t hellodocker:v1 . 以下圖Image-4所示:
docker經過build指令來建立鏡像(Image), build 指令後的-t 表示的是指定當前Image的Tag,你們能夠理解成Image的Name,鏡像名稱冒號後面的v1你們能夠理解成當前Image的版本號,若是不指定的話默認會爲latest,最後的. 表示的是Dockfile所在的當前目錄。上面的指令能夠理解成基於Dockerfile建立一個v1版本的名爲hellodocker的鏡像。執行該命令會獲得以下圖Image-5所示的結果:
截圖中顯示了Dockerfile中咱們所寫的三個指令的執行狀況,最後會提示你Image建立成功。若是你們是第一次執行FROM microsoft/windowsservercore指令,docker daemon會去docker registry中拉取該基鏡像,這個過程至關於下載該鏡像到本地,執行起來會慢一些,你們不要着急。
咱們經過docker images指令來查看建立的鏡像,以下圖Image-6所示:
經過指令docker run --name hellodockercontainer hellodocker:v1 來運行容器,結果如圖Image-7所示:
該指令的意思是基於hellodocker:v1鏡像來運行一個名爲hellodockercontainer的容器。有一個細節你們須要注意一下就是在本機運行時輸出的Machine Name是機器的computer name,而在容器中運行時輸出的Machine name爲容器的ID。咱們能夠經過指令docker ps -a來查看已經建立的容器,如圖Image-8所示:
以上便完成了容器化.NET Framework控制檯應用程序,但願這個簡單的例子能幫助你們瞭解docker經常使用的一些指令,docker中提供了不少指令,你們能夠經過docker --help來進行查看,同時也能夠訪問docker的官方網站進行進一步的指令學習,官方網站地址: