在Docker容器中運(yùn)行.Net Framework控制臺(tái)應(yīng)用程序

本篇主要講解在Docker容器中運(yùn)行.Net Framework控制臺(tái)應(yīng)用程序的詳細(xì)步驟勿侯。算是Docker容器的入門(mén)示例胁后。

生成.net Framework控制臺(tái)應(yīng)用程序

打開(kāi)VS創(chuàng)建一個(gè)Console Application锦亦,如下圖Image-1所示:

Image-1

打開(kāi)Program.cs妹萨,在main函數(shù)中寫(xiě)入一行代碼,在控制臺(tái)輸出一條消息,如下圖Image-2所示:

Image-2

運(yùn)行控制臺(tái)程序得到如下輸出結(jié)果徒爹,會(huì)輸出一條信息荚醒,和當(dāng)前機(jī)器的computer name,如下圖Image-3所示:

Image-3

添加Dockerfile文件

在添加Dockerfile文件之前讓我們簡(jiǎn)單了解一下Dockerfile文件的作用隆嗅。Dockerfile是一個(gè)文本文件界阁,包含用戶可以在命令行上調(diào)用的所有命令來(lái)創(chuàng)建一個(gè)Image,他是Docker daemon在創(chuàng)建image時(shí)調(diào)用的命令列表胖喳。Dockerfile包含了Docker運(yùn)行應(yīng)用程序所需的所有信息泡躯,要運(yùn)行的基本Docker Image,項(xiàng)目代碼的位置丽焊,它所具有的任何依賴關(guān)系以及在啟動(dòng)時(shí)要運(yùn)行的命令较剃。用一句話來(lái)總結(jié)就是:Docker daemon通過(guò)讀取dockerfile中的內(nèi)容來(lái)創(chuàng)建鏡像(Image)。

右鍵工程添加Dockerfile文件(這塊大家一定要注意技健,添加的Dockerfile文件一定不要有任何后綴名P囱ā!雌贱!)

在Dockerfile文件中我們添加如下三行命令

(1). FROM microsoft/windowsservercore?

通過(guò)FROM指令來(lái)指定我們所要使用的基本鏡像

(2). ADD bin/Release/ /

通過(guò)ADD指令我們將build的應(yīng)用程序添加到容器的跟文件夾中

(3). ENTRYPOINT HelloDocker.exe

通過(guò)ENTRYPOINT指令我們指定在容器啟動(dòng)時(shí)要運(yùn)行的應(yīng)用程序啊送。

創(chuàng)建鏡像(Image)

打開(kāi)cmd命令行工具,進(jìn)入到Dockerfile所在的文件夾欣孤,鍵入如下命令:

docker build -t hellodocker:v1 .? ? ? ? 如下圖Image-4所示:

Image-4

docker通過(guò)build指令來(lái)創(chuàng)建鏡像(Image), build 指令后的-t 表示的是指定當(dāng)前Image的Tag馋没,大家可以理解成Image的Name,鏡像名稱冒號(hào)后面的v1大家可以理解成當(dāng)前Image的版本號(hào)降传,如果不指定的話默認(rèn)會(huì)為latest篷朵,最后的. 表示的是Dockfile所在的當(dāng)前目錄。上面的指令可以理解成基于Dockerfile創(chuàng)建一個(gè)v1版本的名為hellodocker的鏡像婆排。執(zhí)行該命令會(huì)得到如下圖Image-5所示的結(jié)果:

Image-5

截圖中顯示了Dockerfile中我們所寫(xiě)的三個(gè)指令的執(zhí)行情況声旺,最后會(huì)提示你Image創(chuàng)建成功。如果大家是第一次執(zhí)行FROM microsoft/windowsservercore指令段只,docker daemon會(huì)去docker registry中拉取該基鏡像艾少,這個(gè)過(guò)程相當(dāng)于下載該鏡像到本地,執(zhí)行起來(lái)會(huì)慢一些翼悴,大家不要著急。

我們通過(guò)docker images指令來(lái)查看創(chuàng)建的鏡像,如下圖Image-6所示:

Image-6

運(yùn)行容器

通過(guò)指令docker run --name hellodockercontainer hellodocker:v1 來(lái)運(yùn)行容器幔妨,結(jié)果如圖Image-7所示:

Image-7

該指令的意思是基于hellodocker:v1鏡像來(lái)運(yùn)行一個(gè)名為hellodockercontainer的容器鹦赎。有一個(gè)細(xì)節(jié)大家需要注意一下就是在本機(jī)運(yùn)行時(shí)輸出的Machine Name是機(jī)器的computer name,而在容器中運(yùn)行時(shí)輸出的Machine name為容器的ID误堡。我們可以通過(guò)指令docker ps -a來(lái)查看已經(jīng)創(chuàng)建的容器古话,如圖Image-8所示:

Image-8

以上便完成了容器化.NET Framework控制臺(tái)應(yīng)用程序,希望這個(gè)簡(jiǎn)單的例子能幫助大家了解docker常用的一些指令锁施,docker中提供了很多指令陪踩,大家可以通過(guò)docker --help來(lái)進(jìn)行查看杖们,同時(shí)也可以訪問(wèn)docker的官方網(wǎng)站進(jìn)行進(jìn)一步的指令學(xué)習(xí),官方網(wǎng)站地址:https://docs.docker.com/engine/reference/commandline/port/

上一篇(在Windows系統(tǒng)中安裝Docker CE)

下一篇(Docker容器中運(yùn)行Asp.Net MVC應(yīng)用程序)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末肩狂,一起剝皮案震驚了整個(gè)濱河市摘完,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌傻谁,老刑警劉巖孝治,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異审磁,居然都是意外死亡谈飒,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)态蒂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)杭措,“玉大人,你說(shuō)我怎么就攤上這事钾恢∈炙兀” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵赘那,是天一觀的道長(zhǎng)刑桑。 經(jīng)常有香客問(wèn)我,道長(zhǎng)募舟,這世上最難降的妖魔是什么祠斧? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮拱礁,結(jié)果婚禮上琢锋,老公的妹妹穿的比我還像新娘。我一直安慰自己呢灶,他們只是感情好吴超,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著鸯乃,像睡著了一般鲸阻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上缨睡,一...
    開(kāi)封第一講書(shū)人閱讀 51,541評(píng)論 1 305
  • 那天鸟悴,我揣著相機(jī)與錄音,去河邊找鬼奖年。 笑死细诸,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的陋守。 我是一名探鬼主播震贵,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼利赋,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了猩系?” 一聲冷哼從身側(cè)響起媚送,我...
    開(kāi)封第一講書(shū)人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蝙眶,沒(méi)想到半個(gè)月后季希,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡幽纷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年式塌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片友浸。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡峰尝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出收恢,到底是詐尸還是另有隱情武学,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布伦意,位于F島的核電站火窒,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏驮肉。R本人自食惡果不足惜熏矿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望离钝。 院中可真熱鬧票编,春花似錦、人聲如沸卵渴。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)浪读。三九已至昔榴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間碘橘,已是汗流浹背互订。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蛹屿,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓岩榆,卻偏偏與公主長(zhǎng)得像错负,于是被迫代替她去往敵國(guó)和親坟瓢。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容