.NET 5 部署在docker上运行的方法
 更新时间:2021年03月06日 10:43:12   作者:UP技术控  

这篇文章主要介绍了.NET 5 部署在docker上运行的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1、创建站点
创建一个ASP.NET Core Web应用程序,选中启用Docker支持。自动帮我们创建一个Dockerfile文件。

2、编写Dockerfile文件
dockerfile是一个文件格式的配置文件,用户可以使用dockerfile来快速构建自定义的镜像。由一行行命令语句组成,并且支持#开头的注释行。
dockerfile主题内容一般分为4部分

基础镜像信息
维护者信息使用label指令
镜像操作指令
容器启动时执行指令

#See aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

#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 aka.ms/containercompat

#FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
#WORKDIR /app
#EXPOSE 80
#EXPOSE 443
#
#FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
#WORKDIR /src
#COPY [“AA.Mvc/AA.Mvc.csproj”, “AA.Mvc/”]
#RUN dotnet restore “AA.Mvc/AA.Mvc.csproj”
#COPY . .
#WORKDIR “/src/AA.Mvc”
#RUN dotnet build “AA.Mvc.csproj” -c Release -o /app/build
#
#FROM build AS publish
#RUN dotnet publish “AA.Mvc.csproj” -c Release -o /app/publish
#
#FROM base AS final
#WORKDIR /app
#COPY –from=publish /app/publish .
#ENTRYPOINT [“dotnet”, “AA.Mvc.dll”]

# 父镜像
#FROM microsoft/aspnetcore:5.0
#FROM mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim AS baseWORKDIR /app

FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
## 设置工作目录
#WORKDIR /app
#
## 复制发布文件到/app下
#COPY . /app
#
## 设置端口
#EXPOSE 5005
EXPOSE 80
COPY . .
# 使用AA.Mvc.dll来运行ASP.NET Core项目,注意大小写
#ENTRYPOINT [“dotnet”, “AA.Mvc.dll”, “–server.urls”, “*:5005”]
ENTRYPOINT [“dotnet”, “AA.Mvc.dll”]

dockerfile文件指令说明:

FROM -指定所创建镜像的基础镜像
WORKDIR-配置工作目录
EXPOSE-声明镜像内服务监听的端口
COPY-复制内容到镜像
ENTRYPOINT-启动镜像的默认人口命令

3、编译发布web项目

4、构建镜像,运行容器并浏览
创建镜像,可以使用命令docker build,如下所示:

docker build -t core-mvc .

这步可能会慢一些,因为需要下载运行环境,请耐心等待

参数分解:

-t —指定镜像名称
命令结尾处.—表示build上下文为当前目录,默认情况下docker会使用在上下文的根目录下找到Dockerfile文件

查看镜像列表,输入一下命令

docker images

创建并启动、查看容器

docker run –name netcore-mvc -d -p 50879:80 core-mvc
docker ps -a

参数说明

-d ,表示在后台以守护态(daemonized)形式运行容器
-p 外部端口与内部容器端口映射。
–name 指定容器的名称。当然可以不指定,默认会为我们创建

这里如果docker run失败后再次运行会提示名称已存在,可以使用以下命令来删除容器

docker rm -f netcore-mvc

最后一个参数 core-mvc 就是我们刚创建的镜像名称,经过以上4个步骤,在浏览器中输入地址localhost:50879/查看如图

至此一个完整的项目以手工的方式运行在docker容器中。
到此这篇关于.NET 5 部署在docker上运行的方法的文章就介绍到这了,更多相关.NET 5 部署docker运行内容请搜索华域联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持华域联盟!

您可能感兴趣的文章:Linux服务器下利用Docker部署.net Core项目的全过程docker部署Asp.net core应用的完整步骤Asp.net Core Jenkins Docker实现一键化部署的实现.Net Core自动化部署之利用docker版jenkins部署dotnetcore应用的方法Centos7+Docker+Jenkins+ASP.NET Core 2.0自动化发布与部署的实现详解ASP.NET Core Docker部署

.NET
部署
docker
运行

相关文章
解决DropDownList总是选中第一项的方法这篇文章主要介绍了解决DropDownList总是选中第一项的方法,DropDownList下拉框服务器控件是最常用的控件之一,虽然使用方便,但也会出现奇怪的错误,感兴趣的小伙伴们可以参考一下 2015-10-10
ASP.NET中为DataGrid添加合计字段ASP.NET中为DataGrid添加合计字段… 2006-09-09
Asp.Net使用服务器控件Image/ImageButton显示本地图片的方法Image/ImageButton服务器控件显示本地的图片,实现思路是数据库中存放了图片的相对地址,读取数据库中的地址,用控件加载显示图片。具体实现步骤大家参考下本文
2017-08-08
如何将数据绑到gridview然后导成excel这篇文章主要介绍了如何将数据绑到gridview然后导成excel,需要的朋友可以参考下 2014-02-02
当年学习ADO.NET的笔记那些年学习了ASP.NET后又开始学习ASP.NET的新知识,ADO.NET用于访问数据库,一般可以分为连接模式和非连接模式 2012-03-03
新手入门:C++下的引用类型新手入门:C++下的引用类型… 2006-09-09
ASP.NET中GridView的文件输出流方式本文的主要内容是讲ASP.NET中GridView输出显示的文件,这是个人项目中的一点小经验,希望能给到有需要帮助的人。 2016-08-08
asp.net使用npoi读取excel模板并导出下载详解这篇文章主要介绍了asp.net使用npoi读取excel模板并导出下载的示例,大家参考使用吧 2014-01-01
litjson读取数据示例这篇文章主要介绍了litjson读取数据示例,大家参考使用吧 2014-01-01
Asp.Net中NHiernate的Session的管理Asp.Net中NHiernate的Session的管理… 2006-09-09

最新评论

声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。