Образ Docker не запускается на одном экземпляре контейнера, но отлично работает на DockerHub - PullRequest
0 голосов
/ 12 июля 2019

Образ Docker не запускается на одном экземпляре контейнера, но отлично работает на DockerHub

В нашем проекте есть образ докера, созданный в Windows, который передается в реестр Azure Container и DockerHub.

Существует две службы приложений: одна ссылается на изображение контейнера из DockerHub (общедоступное хранилище), а другая - на то же изображение из ACR - экземпляр единого контейнера.

Тот, который развернут из DockerHub, запускается и работает без каких-либо сообщений об ошибках, тогда как тот, который развернут в Единственном экземпляре контейнера, выдает следующую ошибку в журналах:

1/07/2019 23:36:51.227 INFO - Site: mycontainer - Start container succeeded. Container: 
11/07/2019 23:36:56.245 INFO - Site: mycontainer - Container has exited
11/07/2019 23:36:56.261 INFO - Site: mycontainer - Purging pending logs after stopping container
11/07/2019 23:36:56.245 ERROR - Site: mycontainer - Container could not be started
11/07/2019 23:36:56.245 INFO - Site: mycontainer - Attempting to stop container: 196bc2a89fb093415220b659c1eda7fabaaeebd97a2e71802e1dce592defcb35
11/07/2019 23:36:56.261 INFO - Site: mycontainer - Container stopped successfully. Container Id: 196bc2a89fb093415220b659c1eda7fabaaeebd97a2e71802e1dce592defcb35
11/07/2019 23:36:56.274 INFO - Site: mycontainer - Purging after container failed to start
  1. Я попытался опубликовать проект контейнера как автономное приложение с runtimeconfig.json, который все еще не заставляет контейнер работать на ACR - один экземпляр контейнера.
  2. Я проверил, что размер изображения составляет около 350+ МБ, и в службе приложений достаточно квоты.
  3. Я сравнил конфигурацию обеих служб приложений, и они абсолютно одинаковы, за исключением того, что один из них получен из DockerHub, а другой (проблемный) - из реестра Azure Container.

Содержимое файла My Docker

FROM mcr.microsoft.com/dotnet/core/aspnet:3.0-nanoserver-1809 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/core/sdk:3.0-nanoserver-1809 AS build
WORKDIR /src
COPY ["ProjectFolder/ContainerProject.csproj", "ProjectFolder/"]
RUN dotnet restore ProjectFolder/ContainerProject.csproj
COPY . .
WORKDIR "/src/ProjectFolder"
RUN dotnet build "ContainerProject.csproj" -c Release -o /app

FROM build AS publish
RUN dotnet publish "ContainerProject.csproj" -c Release -o

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "ContainerProject.dll"]

Поскольку опция «Диагностировать и решать проблемы» недоступна для контейнеров Windows, пожалуйста, помогите, если кто-нибудь сталкивался с подобной ситуацией, и если есть какие-либо шаги по исправлению / устранению неполадок.

Спасибо!

...