AWS ECS中的Windows docker镜像不兼容

时间:2018-08-23 05:49:03

标签: amazon-web-services docker amazon-ecs

我已在AWS Elastic Container Services(ECS)中创建了一个标准Windows群集,并尝试将ASP.Net docker映像(microsoft / aspnet:4.7.1-windowsservercore-1709)部署到该映像,并得到以下错误< / p>

  

状态原因CannotPullContainerError:Windows版本   基于10.0.16299的映像与10.0.14393主机不兼容

我的应用程序是使用.Net Framework 4.6.1的ASP.Net WebAPI应用程序。

我的docker文件是

FROM microsoft/aspnet:4.7.1-windowsservercore-1709
ARG source
WORKDIR /inetpub/wwwroot
COPY ${source:-obj/Docker/publish} .

谁能建议我可以部署什么映像?

谢谢

2 个答案:

答案 0 :(得分:1)

将FROM更改为aspnet:4.7.1-windowsservercore-ltsc2016,它应该可以解决您的问题。请记住,此标签的图片大小比1709大得多。

答案 1 :(得分:1)

在使用AWS ECS时,我们还收到以下消息:

  

CannotPullContainerError:基于Windows版本10.0.16299的映像与10.0.14393主机不兼容

经过大量的试验和错误,我们发现我们使用的是.NetCore SDK 2.2 ,而AWS ECS希望使用 2.1 。开发人员在Visual Studio 2017和Dockerfile中进行了更改,以引用2.1而不是2.2。一旦完成,ECS便可以使用它,并且我们处于运行状态。 不幸的是,错误并没有那么描述性,我们在发现真正问题所在之前走了兔子洞。