是否需要 windows 服务器来构建服务器映像?
Is windows server required to build server images?
非常简单的 .Net5.0 Dockerfiles,在 Windows 10 20H2 上构建和运行良好。但是,当我将图像推送到 Azure 容器时,出现 New-AzContainerGroup: Unsupported windows image version
错误。这听起来像是我推 Windows 10 而不是服务器。我需要在服务器 OS 上构建此映像吗?
FROM mcr.microsoft.com/dotnet/sdk:5.0
WORKDIR /source
COPY *.csproj .
RUN ["dotnet", "restore"]
COPY . .
RUN ["dotnet", "build"]
EXPOSE 3000/tcp
ENTRYPOINT ["dotnet", "run"]
找到答案,只需要使用在我需要的 OS 上构建的正确标记构建。在下面的dockerfile中,就是标签5.0-windowsservercore-ltsc2019
。那是用服务器核心 ltsc2019 构建的。现在在容器服务工作。
https://hub.docker.com/_/microsoft-dotnet-sdk
FROM mcr.microsoft.com/dotnet/sdk:5.0-windowsservercore-ltsc2019
WORKDIR /source
COPY *.csproj .
RUN ["dotnet", "restore"]
COPY . .
RUN ["dotnet", "build"]
EXPOSE 3000/tcp
ENTRYPOINT ["dotnet", "run"]
非常简单的 .Net5.0 Dockerfiles,在 Windows 10 20H2 上构建和运行良好。但是,当我将图像推送到 Azure 容器时,出现 New-AzContainerGroup: Unsupported windows image version
错误。这听起来像是我推 Windows 10 而不是服务器。我需要在服务器 OS 上构建此映像吗?
FROM mcr.microsoft.com/dotnet/sdk:5.0
WORKDIR /source
COPY *.csproj .
RUN ["dotnet", "restore"]
COPY . .
RUN ["dotnet", "build"]
EXPOSE 3000/tcp
ENTRYPOINT ["dotnet", "run"]
找到答案,只需要使用在我需要的 OS 上构建的正确标记构建。在下面的dockerfile中,就是标签5.0-windowsservercore-ltsc2019
。那是用服务器核心 ltsc2019 构建的。现在在容器服务工作。
https://hub.docker.com/_/microsoft-dotnet-sdk
FROM mcr.microsoft.com/dotnet/sdk:5.0-windowsservercore-ltsc2019
WORKDIR /source
COPY *.csproj .
RUN ["dotnet", "restore"]
COPY . .
RUN ["dotnet", "build"]
EXPOSE 3000/tcp
ENTRYPOINT ["dotnet", "run"]