網站首頁 編程語言 正文
一、創建
1、創建應用程序
使用ASP.NET Core創建一個MVC應用程序,并修改Home控制器Index視圖代碼:
@{ ViewData["Title"] = "Home Page"; } <div class="text-center"> @*<h1 class="display-4">Welcome</h1> <p>Learn about <a >building Web apps with ASP.NET Core</a>.</p>*@ <h1>使用Docker部署ASP.NET Core應用程序</h1> </div>
運行程序,輸出結果如下圖所示:
2、添加Dockerfile文件
由于我們要使用Docker進行部署,所以要添加Dockerfile文件,在項目上右鍵,選擇“添加”,然后選擇“Docker支持”,如圖所示:
我們是在Linux上進行部署,所以目標OS選擇Linux:
Dockerfile文件內容如下:
# 使用運行時鏡像 FROM mcr.microsoft.com/dotnet/aspnet:5.0-buster-slim # 設置工作目錄 WORKDIR /app # 把目錄下的內容都復制到當前目錄下 COPY . . # 暴露80端口 EXPOSE 80 # 設置容器編碼格式 ENV LANG C.UTF-8 # 設置時區,解決容器內時間和宿主機時間不一致問題 RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone # 運行鏡像入口命令和可執行文件名稱 ENTRYPOINT ["dotnet", "DockerDemo.dll"]
注意:添加了Dockerfile文件以后,里面會自動添加一個文件內容,這里沒有使用默認的Dockerfile文件的內容,Dockerfile文件的內容可以自己修改。
修改Dockerfile文件的屬性,修改為始終復制:
3、發布
最后,將應用程序進行發布,這里選擇發布到文件夾:
發布文件夾目錄可以自定義:
二、部署
將上面步驟發布后的文件拷貝到遠程的Linux服務器上,然后進行部署。
1、構建鏡像
執行下面的命令,根據Dockerfile文件構建鏡像:
docker build -t dockerdemo .
如圖所示:
注意:最后的“.”不能省略。
默認情況下會找當前目錄下面的Dockerfile文件,我們也可以修改Dockerfile文件的名稱,構建鏡像的時候使用-f參數指定使用哪個Dockerfile文件即可,我們修改Dockerfile文件的名稱:
使用下面的命令構建鏡像:
docker build -t dockerdemotest -f Dockerfile-test .
如圖所示:
2、運行容器
使用下面的命令根據上面步驟構建的鏡像運行容器:
docker run --name=dockerdemo -d -p 5000:80 dockerdemo
如圖所示:
這樣就表示容器運行成功了,可以訪問了:
這樣一個簡單的部署就完成了。
原文鏈接:https://www.cnblogs.com/dotnet261010/p/14984798.html
相關推薦
- 2022-07-04 C#中File靜態類對文件的讀取寫入_C#教程
- 2022-04-24 C/C++字節序的深入理解_C 語言
- 2023-03-20 C#如何將DLL打包到程序中_C#教程
- 2022-04-23 Linux基于客戶端用戶密鑰登錄服務端用戶
- 2023-01-23 Electron打包React生成桌面應用方法詳解_React
- 2022-02-13 上傳文件出現 413 Request Entity Too Large
- 2022-06-17 C#關鍵字之重寫override介紹_C#教程
- 2022-04-12 .NET 6 “目標進程已退出,但未引發 CoreCLR 啟動事件。請確保將目標進程配置為使用 .N
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支