Я могу успешно создать и запустить демо-класс c asp сайт (здесь: https://www.docker.com/blog/get-apps-off-windows-2003-cloud-docker-enterprise/) (исходный код здесь: https://github.com/sixeyed/presentations/tree/master/docker-webinars/from-w2k3-to-cloud) с следующий Dockerfile:
# escape=`
FROM microsoft/iis:windowsservercore-ltsc2016
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
RUN Install-WindowsFeature Web-ASP
COPY ./share/ClassicAspApp.zip .
RUN Expand-Archive -Path ClassicAspApp.zip -DestinationPath C:\ClassicAspApp; `
Remove-Item ClassicAspApp.zip
RUN Remove-Website -Name 'Default Web Site'; `
New-Website -Name web-app -Port 80 -PhysicalPath C:\ClassicAspApp
После построения образа (docker сборка образа -t шестигранная / w2k3-classi c - asp -f. \ docker \ classi c -asp \ Dockerfile.) И запуск контейнера (docker запуск контейнера -d sixeyed / w2k3-classi c - asp), а затем просмотр URL-адреса spesifi c (найден: docker просмотр контейнера) Я действительно может заставить сайт classi c asp работать как положено.
Однако всякий раз, когда я распаковываю и изменяю (даже немного) исходный код в демо-файле asp (в общей папке) а затем пересоберите образ и снова запустите контейнер и перейдите к URL, я всегда буду сталкиваться с http 403 - Запрещено: доступ запрещен. У вас нет разрешения на просмотр этого каталога или страницы с использованием предоставленных вами учетных данных.
Я пытался найти решение этой проблемы из многих источников (например, IIS в Docker, возвращая 403 и Dockerize ASP Classi c на IIS ), но пока безуспешно.
Может кто-нибудь понять, почему я всегда сталкиваюсь с http 403, когда меняю тест asp - файл в исходном коде? Итак, что нужно сделать, чтобы это исправить?