Я пытаюсь создать контейнер для устаревшего ASP. NET приложения, которое зависит от Web Services Enhancements (WSE) 3.0 . Я понимаю, что это устаревшая технология, но рефакторинг приложения для ее удаления невозможен.
Мой Dockerfile:
FROM mcr.microsoft.com/windows/servercore/iis
RUN mkdir prereqs
WORKDIR /prereqs
COPY ["prereqs/WSE30.msi", "c:/prereqs/"]
RUN "C:\prereqs\WSE30.msi /qn /quiet /passive"
.
Я пытался изменить команду RUN, чтобы включить ведение журнала ...
RUN "C:\prereqs\WSE30.msi /qn /quiet /passive /lv c:/logs/wse30.txt"
... но это создает условие, при котором сборка docker кажется просто зависает; Я позволил нескольким из этих попыток выполняться более часа, и они, похоже, не прогрессируют и не завершаются.
Я также попытался добавить «выход 0», чтобы просто позволить продолжить сборку, если есть ошибка ...
RUN "C:\prereqs\WSE30.msi /qn /quiet /passive /lv c:/logs/wse30.txt" ; exit 0
.. но результат тот же. Сборка зависает и никогда не завершается.
Я знаю, что этот конкретный MSI поддерживает автоматическую / автоматическую установку, как я это делал в пакетных файлах.