.NET Core支持跨平臺的應用,現在越來越多的.net應用可以部署云上或Docker上,本文簡單介紹如何將.NET 5的ASP .NET Core應用部署到Docker.
打開VS2019,創建一個跨平臺的Asp.NET Core應用 ,命名為:ASP.NETCore.Test,目標框架選擇 .NET 5,

記得勾選Docker支持項,(創建完會自動生成DockerFile檔案,方便Docker部署)
在Pages檔案夾下,打開index.cshtml,寫下頁面內容
@page
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
<div >
<div id="msg">[狀態]@Model.Code<br/>[訊息]@Model.Message</div>
</div>
在后臺的index.cshtml.cs頁面下封裝上面兩個屬性,
public string Message { get; private set; }
public int Code { get; private set; }
并在頁面的OnGet()事件下,寫下回傳值,
Code = 200; Message = "呼叫成功";
在Program.cs啟動類,指定埠號8083:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>()
.UseUrls("http://*:8083");
});
啟動除錯,在瀏覽器看到結果類似下圖所示:

以上簡單例子就是.NET 5的應用了,若要部署到Docker,則修改dockerfile檔案中的腳本:
FROM mcr.microsoft.com/dotnet/aspnet:5.0 #設定作業目錄為 `/publish` 檔案夾,即容器啟動默認的檔案夾 WORKDIR /publish #拷貝專案publish檔案夾中的所有檔案到 docker容器中的publish檔案夾中 COPY . /publish #設定Docker容器對外暴露8083埠 EXPOSE 8083 #使用dotnet命令啟動應用 CMD ["dotnet", "ASP.NETCore.Test.dll", "--server.urls", "http://*:8083"]
將檔案上傳到linux服務器,使用命令構建docker鏡像,
docker build -t ASP.NETCore.Test:v1 .
啟動鏡像:
docker run --name pro -p 8083:8083 -d ASP.NETCore.Test:V1
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/288338.html
標籤:.NET技术
下一篇:Winform 控制元件坐標定位
