Ich habe ein Problem, wenn eine meiner Lösungen in Docker für Windows ausgeführt wird. Ich benutze das folgende dockerfile:Docker für Windows - Interner Server Fehler
# escape=`
FROM microsoft/iis
SHELL ["powershell", "-command"]
# Install ASP.NET
RUN Install-WindowsFeature NET-Framework-45-ASPNET; `
Install-WindowsFeature Web-Asp-Net45
# Configure website
EXPOSE 8000
RUN Remove-Website -Name 'Default Web Site'; `
md c:\barometer; `
New-Website -Name 'barometer' `
-Port 8000 -PhysicalPath 'c:\barometer' `
-ApplicationPool '.NET v4.5'
COPY PublishOutput c:\barometer
Meine Build Schritte sind wie folgt:
docker build -t mvcbarometer .
docker run -d --name barometer mvcbarometer
docker inspect -f "{{ .NetworkSettings.Networks.nat.IPAddress }}" barometer
Alles baut in Ordnung, aber ich bekomme die folgende Fehlermeldung, wenn Sie die Website besuchen: „Es gibt ein Problem mit der Ressource, nach der Sie suchen, und sie kann nicht angezeigt werden. "
Aus irgendeinem Grunde, den ich nicht die klassische gelbe Fehlerseite bekommen, das angezeigt wird, wenn sie durch Visual Studio debuggen, obwohl ich die gleiche Konfiguration verwenden.
Es scheint nicht wie Docker irgendwo Fehler protokolliert, so bin ich irgendwie bei der Fehlersuche das Problem fest. Meine anderen (einfacher) Projekte funktionieren gut mit einem ähnlichen Docker-Build-Setup.
Ich habe irgendwo gelesen, dass Docker Probleme mit bestimmten web.config-Elementen hat, aber ich kann keine echte Dokumentation zu diesem Thema finden.
Könnte mir jemand bei der Fehlersuche helfen?
Die Zugabe von "RUN Set-Acl -Path c: \ Barometer -AclObject (Get-Acl -Path" C: \ inetpub \ wwwroot ");" Die Docker-Datei hat nichts geändert. Wie im ursprünglichen Beitrag erwähnt: "Meine anderen (einfacher) Projekte funktioniert gut mit einem ähnlichen Docker Build-Setup.", Warum nehme ich an, dass alle Berechtigungen für den Ordner korrekt sein müssen. – antontj