ASP.NET Core:使用Docker部署应用程序

一、前言

本篇文章讲解如何在Linux上使用Docker来部署ASP.NET Core应用程序。

二、

1、创建应用程序

使用ASP.NET Core创建一个MVC应用程序,并修改Home控制器Index视图代码:

@{
    ViewData["Title"] = "Home Page";
}

class="text-center">
    @*class="display-4">Welcome
    Learn about "https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core.*@
    使用Docker部署ASP.NET Core应用程序

运行程序,输出结果如下图所示:

ASP.NET Core:使用Docker部署应用程序

2、添加Dockerfile文件

由于我们要使用Docker进行部署,所以要添加Dockerfile文件,在项目上右键,选择”添加”,然后选择”Docker支持”,如图所示:

我们是在Linux上进行部署,所以目标OS选择Linux:

ASP.NET Core:使用Docker部署应用程序

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文件的属性,修改为始终复制:

ASP.NET Core:使用Docker部署应用程序

3、发布

最后,将应用程序进行发布,这里选择发布到文件夹:

ASP.NET Core:使用Docker部署应用程序

发布文件夹目录可以自定义:

ASP.NET Core:使用Docker部署应用程序

三、部署

将上面步骤发布后的文件拷贝到远程的Linux服务器上,然后进行部署。

ASP.NET Core:使用Docker部署应用程序

1、构建镜像

执行下面的命令,根据Dockerfile文件构建镜像:

docker build -t dockerdemo .

如图所示:

ASP.NET Core:使用Docker部署应用程序

注意:最后的”.”不能省略。

默认情况下会找当前目录下面的Dockerfile文件,我们也可以修改Dockerfile文件的名称,构建镜像的时候使用-f参数指定使用哪个Dockerfile文件即可,我们修改Dockerfile文件的名称:

ASP.NET Core:使用Docker部署应用程序

使用下面的命令构建镜像:

docker build -t dockerdemotest -f Dockerfile-test .

如图所示:

ASP.NET Core:使用Docker部署应用程序

2、运行容器

使用下面的命令根据上面步骤构建的镜像运行容器:

docker run --name=dockerdemo -d -p 5000:80 dockerdemo

如图所示:

ASP.NET Core:使用Docker部署应用程序

这样就表示容器运行成功了,可以访问了:

ASP.NET Core:使用Docker部署应用程序

这样一个简单的部署就完成了。

Original: https://www.cnblogs.com/dotnet261010/p/14984798.html
Author: .NET开发菜鸟
Title: ASP.NET Core:使用Docker部署应用程序

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/534363/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球