日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

如何容器化你的 ASP.Net Core

發布時間:2023/12/4 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何容器化你的 ASP.Net Core 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Docker 相比 虛擬機 具有更輕量級,更便捷的特性,為什么這么說呢?虛擬機通常打包了完整的操作系統,而容器只僅僅打包了你的應用程序,運行環境及相關依賴庫,Docker 是一種開源的工具包,幫助你更加方便的構建,部署,管理容器。

容器通常被定義為包含了 代碼和相關依賴庫 的應用程序軟件單元,這里的 單元 意味著應用程序運行在擁有自己的獨立環境上,言外之意就是容器和容器之間是相互隔離的,值得注意的是,雖然容器之間是隔離的,但它們還是共享一個操作系統,這個操作系統可以是 Windows 或者 Linux,這也是Docker的誘惑點之一,這篇文章我們將會討論如何在 Windows 平臺上使用 ?Docker 部署 ASP.Net Core。

Windows 上安裝 Docker

要想在 Windows 上安裝 Docker,可以參考官方鏈接:https://docs.docker.com/docker-for-windows/install/ ?,由于篇幅的原因,這里就不贅述了,根據文檔所述安裝好之后,可以使用如下命令來測試 Docker 是否已經安裝成功。

docker?--version

創建含 Docker 的 Asp.Net Core 項目

使用 Visual Studio 2019 創建 ?ASP.Net Core Web Application 模板的時候,記得勾選一下 Enable Docker Support ,在 OS 處選好 Windows 即可,如下圖所示:

當項目創建好之后,解決方案下會自動生成一個 Dockerfile 文件,如下圖所示:

Dockerfile 大體如下:

FROM?microsoft/aspnet:4.7.2-windowsservercore-1803 ARG?source WORKDIR?/inetpub/wwwroot COPY?${source:-obj/Docker/publish}?.

Dockerfile 的目的主要是用來描述如何構建 docker images,你也可以根據自己的場景修改默認的 dockerfile ,比如說修改 From 鏡像名將 host 從 windows 切換到 linux 上。

部署 ASP.Net Core 到 Docker

首先通過 Visual Studio 對項目進行 build,然后用管理員模式開啟 cmd 窗口,在命令窗口上輸入如下命令。

docker?build?-t?dockersample?.

上面的命令將會把應用程序構建成名為 dockersample 的鏡像,下圖就展示了這個 build 的過程。

images 生成好之后,接下來就可以通過 images 實例化出一個 application 容器,使用如下命令即可。

docker?run?-d?-p?8080:80?--name?myapp?dockersample

上面的 myapp 表示你的容器名字, 后面的 dockersample 就是之前構建好的鏡像名,如果一切正常,此時應用程序就成功跑在 container 上了,你可以通過瀏覽器鍵入 http://localhost:8080/api/values 地址來調用 ValuesController.Get() 方法判斷是否一切正常。

Docker 的一些常用命令

要想列出所有的 images,可以使用如下命令。

docker image ls

要想列出所有的容器,使用如下命令。

docker container ls –all

要想停止容器,使用如下命令。

docker stop containername

要想刪除某一個容器,可以使用如下命令。

docker rm containername

值得注意的是,如果要刪除的容器正在運行中,此時你是刪除不掉的,正確的做法是先停止容器,然后再刪除。

容器給了應用程序極小輕量的運行環境,相比虛擬機,容器更加輕量級,而且容器一旦啟動,你的應用程序幾乎同時啟動,Docker 是一種開源的容器化解決方案,現如今也是主流的容器化方式,關于更多的 Docker 討論會在后面的文章中一一展開。

譯文鏈接:https://www.infoworld.com/article/3314897/how-to-dockerize-an-aspnet-core-application.html

總結

以上是生活随笔為你收集整理的如何容器化你的 ASP.Net Core的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。