.NET Core Docker 部署指南 - 详细步骤及示例
要将 .NET Core 应用程序部署到 Docker 中,需要执行以下步骤:
-
创建 Dockerfile:Dockerfile 是用于构建 Docker 映像的指令文件。在 Dockerfile 中,需要指定基础映像和安装 .NET Core SDK 和运行时所需的其他依赖项。
-
构建 Docker 映像:使用 Docker CLI 构建 Docker 映像,可以使用 Dockerfile 构建映像。
-
运行 Docker 容器:使用 Docker CLI 运行 Docker 容器,可以指定要将主机端口映射到容器端口的端口映射选项。
下面是一个简单的 Dockerfile 示例:
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR /app
# copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore
# copy everything else and build app
COPY . ./
RUN dotnet publish -c Release -o out
# build runtime image
FROM mcr.microsoft.com/dotnet/aspnet:5.0
WORKDIR /app
COPY --from=build /app/out .
ENTRYPOINT ["dotnet", "myapp.dll"]
在 Dockerfile 中,首先指定基础映像为 .NET Core SDK 映像,然后在 /app 目录中创建一个工作目录。通过 COPY 指令将 .csproj 文件复制到工作目录中,并使用 dotnet restore 指令还原依赖项。接下来,将应用程序的所有其他文件复制到工作目录中,并使用 dotnet publish 指令构建出发布版本。最后,在另一个 FROM 指令中,指定基础映像为 .NET Core 运行时映像,并将应用程序复制到工作目录中。最后,通过 ENTRYPOINT 指令指定应用程序的入口点。
要构建 Docker 映像,可以使用以下命令:
docker build -t myapp .
在命令中,-t 选项用于指定映像名称,并指定当前目录为上下文。
要运行 Docker 容器,可以使用以下命令:
docker run -p 8080:80 myapp
在命令中,-p 选项用于指定主机端口和容器端口之间的端口映射。在此示例中,将主机端口 8080 映射到容器端口 80。最后,指定映像名称为 myapp。
原文地址: https://www.cveoy.top/t/topic/mP1w 著作权归作者所有。请勿转载和采集!