# 1. 指定编译和发布应用的镜像
FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build
# 2. 指定(编译和发布)工作目录
WORKDIR /app
# 3. 拷贝.csproj到工作目录/app,然后执行dotnet restore恢复所有安装的NuGet包
COPY *.csproj ./
RUN dotnet restore
# 4. 拷贝所有文件到工作目录(/app),然后执行dotnet publish命令将应用发布到/app/out目录下
COPY . ./
RUN dotnet publish -c Release -o out
# 5. 编译生成Docker镜像
# 5.1.设置基础镜像
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS runtime
# 5.2. 设置(运行)工作目录,并将发布文件拷贝到out子目录下
WORKDIR /app
COPY --from= build /app/out .
# 5.3. 利用环境变量设置ASP.NET Core应用的监听地址
ENV ASPNETCORE_URLS http://0.0.0.0:3721
# 5.4. 执行dotnet命令启动ASP.NET Core应用
ENTRYPOINT ["dotnet", "helloworld.dll"]
Dockerfile for dotnet
最新推荐文章于 2024-01-16 01:28:12 发布
本文详细介绍使用Docker构建和部署.NET Core应用的过程。从选择基础镜像开始,到设置工作目录,恢复NuGet包,发布应用,再到最终生成镜像,每一步都给出具体指令。特别关注了如何在发布阶段利用dotnet publish命令将应用发布到指定目录,以及如何在运行阶段设置环境变量以指定应用的监听地址。
659

被折叠的 条评论
为什么被折叠?



