主頁 > 知識庫 > Docker容器運行ASP.NET Core的實現(xiàn)步驟

Docker容器運行ASP.NET Core的實現(xiàn)步驟

熱門標(biāo)簽:遼寧電銷平臺外呼系統(tǒng)軟件 申請400電話號碼多少錢 信陽銷售外呼系統(tǒng)招商 coreldraw地圖標(biāo)注 菏澤crm外呼系統(tǒng)價格 物超所值的400電話申請 如何在各種地圖標(biāo)注自己的地址 百應(yīng)電銷機器人靠譜嗎 營銷電銷機器人招商

最近要學(xué)習(xí)的知識太多,都不知道先學(xué)哪些了,原本計劃這篇博客是寫xamarin.forms中的listview用法,關(guān)于listview的用法簡書上有一篇介紹的也比較詳細,所以暫時先緩一緩,屬于次要任務(wù),等以后再寫。本周在萬能的淘寶找了寫關(guān)于區(qū)塊鏈的教程,同時了解了下.net core。最近一兩年對C#技術(shù)跟進不多,側(cè)重點是Java,之前出.net core1.0的時候覺得.net core還不完善,所以就沒學(xué),沒想到.net core這么快已經(jīng)要到3.0了。畢竟自己是C#出身,一精多轉(zhuǎn),不能忘本,所以計劃在未來一段時間把.net core也了解一下,大致看了一下,與.net的部分也是有很多交集,可能最大的特點就是跨平臺部分。本篇先介紹下使用docker運行asp.net core應(yīng)用。

一、新建asp.net core應(yīng)用

這里新建了一個myWebApp的asp.net core的應(yīng)用。

二、添加docker支持

添加docker支持有兩種方式,一是在新建項目時設(shè)置啟用docker支持,二是在已創(chuàng)建的項目上右鍵->添加->docker支持。

同時需要選擇是window平臺還是linux平臺,如果是window系統(tǒng)就需要設(shè)置window平臺,同時docker也需要設(shè)置為window containers。如下圖報image operating system "windows" cannot be used on this platform錯誤,就是由于選擇的平臺不對。

三、創(chuàng)建docker鏡像

添加docker支持后會自動生成dockerfile文件,這里有一個坑,在COPY ["myWebApp/myWebApp.csproj", "myWebApp/"]行中需要注意是myWebApp/myWebApp.csproj,是myWebApp目錄下的myWebApp.csproj工程文件,所以需要把創(chuàng)建好的dockerfile拷貝到工程文件目錄下。

#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.
#For more information, please see https://aka.ms/containercompat

FROM microsoft/dotnet:2.2-aspnetcore-runtime-nanoserver-sac2016 AS base
WORKDIR /app
EXPOSE 80

FROM microsoft/dotnet:2.2-sdk-nanoserver-sac2016 AS build
WORKDIR /src
COPY ["myWebApp/myWebApp.csproj", "myWebApp/"]
RUN dotnet restore "myWebApp/myWebApp.csproj"
COPY . .
WORKDIR "/src/myWebApp"
RUN dotnet build "myWebApp.csproj" -c Release -o /app

FROM build AS publish
RUN dotnet publish "myWebApp.csproj" -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "myWebApp.dll"]

在項目目錄下使用docker命令build生成docker鏡像,docker build -t aspnetdemo .,(aspnetdemo后面有個.,表示dockerfile路徑)。這里build了一個aspnetdemo的鏡像,由于首次運行dockerfile,一些.net core基礎(chǔ)鏡像需要下載,而且家里網(wǎng)速也比較慢,下載的過程等了好久。

四、啟動容器

在第三步鏡像已經(jīng)創(chuàng)建完成,使用docker images可以看到已創(chuàng)建好的鏡像,然后就是使用docker run啟動容器運行.net core應(yīng)用。

在瀏覽器中山輸入 http://localhost:8080/ ,可以看到如下頁面。

微軟官方文檔寫使用 Windows 容器時,必須直接在瀏覽器中轉(zhuǎn)到容器 IP 地址,這里使用了-p映射了端口,所以直接輸入 http://localhost:8080/ 是可以訪問的。

下面使用ipconfig查找容器映射的docker的ip,然后在瀏覽器輸入docker的ip也是可以訪問。

五、小結(jié)

本篇只是簡單介紹了docker部署asp.net core應(yīng)用,.后續(xù)net core可能會連數(shù)據(jù)庫、redis等容器,那樣就涉及到容器互聯(lián),容器編排技術(shù)以及devops持續(xù)集成,往后擴展又可以擴展好多,這些以后慢慢學(xué)。

標(biāo)簽:內(nèi)江 江西 泰安 江門 湖北 玉樹 廈門 瀘州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Docker容器運行ASP.NET Core的實現(xiàn)步驟》,本文關(guān)鍵詞  Docker,容器,運行,ASP.NET,Core,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Docker容器運行ASP.NET Core的實現(xiàn)步驟》相關(guān)的同類信息!
  • 本頁收集關(guān)于Docker容器運行ASP.NET Core的實現(xiàn)步驟的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章