千家信息网

如何使用Docker部署ASP.NET Core程序

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关如何使用Docker部署ASP.NET Core程序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言这篇文章介绍如何将一个ASP.
千家信息网最后更新 2026年11月02日如何使用Docker部署ASP.NET Core程序

这篇文章将为大家详细讲解有关如何使用Docker部署ASP.NET Core程序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、前言

这篇文章介绍如何将一个ASP.NET Core应用程序在Docker中进行部署。开发工具使用的是Visual Studio 2019和VS Code。

二、使用Docker部署

我们选择新建一个MVC项目进行演示。

1、新建MVC项目

模板选择ASP.NET Core Web应用程序,如下图所示:

输入项目名称,点击"创建":

选择Web应用程序(模型视图控制器),并勾选"启用Docker支持",如下图所示:

然后会检查Docker环境是否安装,如下图所示:

这样一个MVC项目就创建完成了,会自动生成Dockerfile文件:

如果说创建项目的时候,没有勾选"启用Docker支持",我们也可以在项目创建完成以后在添加Dockerfile文件,在项目上右键,选择"添加"选项下面的"Docker支持",如下图所示:

然后选择Linux系统:

这样也可以添加Dockerfile文件。

最简单的创建Dockerfile文件的方式就是新建一个txt文件,然后重命名为Dockerfile即可。

2、编写Dockerfile文件

我们看看自动生成的Dockerfile文件:

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS baseWORKDIR /appEXPOSE 80FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS buildWORKDIR /srcCOPY ["DockerDemo/DockerDemo.csproj", "DockerDemo/"]RUN dotnet restore "DockerDemo/DockerDemo.csproj"COPY . .WORKDIR "/src/DockerDemo"RUN dotnet build "DockerDemo.csproj" -c Release -o /app/buildFROM build AS publishRUN dotnet publish "DockerDemo.csproj" -c Release -o /app/publishFROM base AS finalWORKDIR /appCOPY --from=publish /app/publish .ENTRYPOINT ["dotnet", "DockerDemo.dll"]

可以看到这里有build和publish命令,自动生成的Dockerfile文件可能会有一些错误,所以我们自己编写一份Dockerfile文件,修改后的Dockerfile文件如下:

# 使用运行时镜像FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim# 设置工作目录WORKDIR /app# 把目录下的内容都复制到当前目录下COPY . .# 暴露80端口EXPOSE 80# 运行镜像入口命令和可执行文件名称ENTRYPOINT ["dotnet", "DockerDemo.dll"]

修改Dockerfile文件的属性,修改为始终复制:

这样能保证Dockerfile可以随程序一起发布。

3、生成镜像

首先发布程序,程序发布成功以后,进入到发布目录,就可以生成镜像,这里使用PowerShell。使用下面的命令生成镜像:

docker build -t aspnetcoredocker .

其中aspnetcoredocker是镜像名称。

上面命令中最后英文状态的.不能省略。

如下图所示:

如果出现上图所示的5步都成功,则表示镜像生成成功了。 我们查看本地的镜像:

可以看到,已经有我们创建的镜像了。我们也可以直接使用VS Code查看。VS Code需要安装一个插件:

安装完成以后,在左侧就可以看到docker图标了:

使用这个插件,就可以看到本地当前所有的镜像:

4、运行镜像

上面镜像构建成功以后,我们就可以使用下面的命令来运行镜像:

docker run --name=aspnetcoredocker -p 6666:80 -d aspnetcoredocker
  • --name :指定容器名称。

  • --p :指定容器端口。

  • --d :指定容器后台运行。

如下图所示:

出现下面的一长串字符串,则说明镜像运行成功。可以使用下面的命令查看正在运行的容器:

docker ps

如下图所示:

可以看到,刚才创建的镜像已经在运行。如果想更直观的查看,可以在VS Code的插件里面查看:

绿色的三角表示正在运行的容器,红色的方框表示停止的容器。

5、验证

容器运行成功,我们在浏览器里面进行访问:

这样一个简单的示例程序就完成了。

关于"如何使用Docker部署ASP.NET Core程序"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

镜像 文件 运行 程序 容器 项目 生成 成功 命令 面的 选择 目录 篇文章 名称 应用程序 插件 自动生成 应用 支持 内容 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 西安纸贵互联网科技有限公司 互联网科技集团 杭州互联网科技公司 狮子座互联网科技培训 成都仁贤领冠互联网科技有限公司 互联网和高科技公司 团飞科技与伯堂互联网服务平台 坤平互联网科技 开一家科技互联网公司需要多少钱 互联网科技大奖都有哪些公司 燊美集互联网科技有限公司 互联网科技公司营业执照怎么办理 山东子淼互联网科技有限公司 中天科技中国工业互联网 山东大美朱楼互联网科技有限公司 神州科技互联网有限公司 万物互联网智能科技 互联网科技新闻 广州智享互联网科技 同城互联网络科技 中关村互联网科技集团 科技互联网政务服务 中资互联网科技 金融科技与互联网金融 凡科互联网科技 上海卓越科技 互联网 西藏七维空间互联网科技有限公司 中国互联网有什么科技含量 西安小鹰速贷互联网科技有限公司 洛阳共同富裕互联网科技有限公司
0