EXE работает в локальном Docker контейнере, но в Azure - PullRequest
0 голосов
/ 04 апреля 2020

У меня есть внутреннее приложение, которое я хотел бы запустить на множестве Azure контейнерных экземпляров. Приложение требует. Net 4.7.2, а также внутренний SDK. Мне удалось заставить его работать на моем локальном Docker контейнере, но как только я помещаю sh его в Azure экземпляр контейнера, он просто ... не работает. Это просто говорит Прекращено (причина не удалась). Логов нет. Без логов я в полной растерянности. Вот Dockerfile, который я использую:

# escape=`

ARG REPO=mcr.microsoft.com/dotnet/framework/runtime
FROM $REPO:4.7.2-windowsservercore-ltsc2019

# Install .NET 4.7.2
RUN powershell -Command `
        $ProgressPreference = 'SilentlyContinue'; `
        Invoke-WebRequest `
            -UseBasicParsing `
            -Uri "https://download.microsoft.com/download/6/E/4/6E48E8AB-DC00-419E-9704-06DD46E5F81D/NDP472-KB4054530-x86-x64-AllOS-ENU.exe" `
            -OutFile dotnet-framework-installer.exe `
    && start /w .\dotnet-framework-installer.exe /q `
    && del .\dotnet-framework-installer.exe `
    && powershell Remove-Item -Force -Recurse ${Env:TEMP}\*

# Restore the default Windows shell for correct batch processing.
SHELL ["cmd", "/S", "/C"]

# Copy all the things
COPY . C:/Build

 # Install Internal SDK
 RUN C:/Build/InternalSDK.Installer.msi /qn

# Copy everything
# COPY . C:\Build

ENTRYPOINT cd C:/Build/build/bin/ && InternalApp.exe -m 18635 -v ./Files -s StratData.strategy -n 10 -l 0 -t 4

Итак, я новичок в Docker, но я понимаю, что контейнер совершенно не знает, что его запускает, и должен вести себя одинаково во всех сред. Почему тогда это происходит по-разному при запуске в экземпляре контейнера?

Спасибо,

...