一、前言
本篇文章讲解如何在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应用程序
运行程序,输出结果如下图所示:
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
如图所示:
这样就表示容器运行成功了,可以访问了:
这样一个简单的部署就完成了。
Original: https://www.cnblogs.com/dotnet261010/p/14984798.html
Author: .NET开发菜鸟
Title: ASP.NET Core:使用Docker部署应用程序
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/534363/
转载文章受原作者版权保护。转载请注明原作者出处!