Я создал простое базовое веб-приложение asp.net, используя шаблоны Visual Studio. Затем я создал файл докера, который выглядит так:
FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app
# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore
# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out
# Build runtime image
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "WebApplication.dll"]
Затем я создал образ из этого, используя:
docker build -t webapplication:dev .
а затем создал и запустил контейнер из этого, используя:
docker run -d -p 8080:80 --name myapp webapplication:dev
Все это работает локально. Затем я попытался отправить это в реестр контейнеров Azure, и он был успешно отправлен. Однако, когда я пытаюсь запустить экземпляр этого контейнера, я получаю сообщение об ошибке в Azure: «Поддерживаемые версии Windows: '10 .0.14393,10.0.17763 '»
Я не понимаю, почему я получаю эту ошибку? Изображение работает локально (я могу проверить это, перейдя по адресу localhost: 8080 и убедившись, что получаю правильный ответ, что я и делаю). Это как-то связано с ACR? Какое обходное решение? Это как-то связано с версией моих окон (я использую 10.0.18363, сборка 18363). Моя система слишком нова, чтобы это работало, что кажется маловероятным? Кто-нибудь видел это?