ASPNETCORE容器正在linux服务器上加载,但“此平台上不能使用图像操作系统“ windows””

时间:2019-04-05 10:45:37

标签: linux docker asp.net-core linux-containers

前一天,另一个docker问题。 我目前正在我想在Ubuntu 18.04上运行的容器中的aspnetcore应用程序上工作。 这是我的Dockerfile:

FROM microsoft/aspnetcore:2.0 AS base
WORKDIR /app
EXPOSE 80

FROM microsoft/aspnetcore-build:2.0 AS build
RUN dotnet restore FOLDER
RUN dotnet build FOLDER
FROM build AS publish
RUN dotnet publish
(I didn't put names or some steps as copy)

在我的部署CI中,它返回无法在该平台上使用的图像操作系统“ windows” 。我直接将这2张图像拉到服务器上,它们拉得很好。

我最初使用-isolation = hyperv 构建。

我对linux容器和服务器还很陌生,因此我不确定问题出在哪里...

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

基本上,您不能在Linux中运行Windows容器。

取自Can Windows Containers be hosted on linux?

容器不是用于虚拟化的,它们正在使用主机的资源。结果,目前Windows容器无法在Linux机器上按原样运行。 但是-您可以使用VM来实现-因为它可以在Windows上使用。您可以在Linux主机上安装Windows VM,这将允许运行Windows容器。