ant*_*ntj 7 asp.net http-status-code-500 docker dockerfile docker-desktop
在Docker Desktop for Windows 中运行我的解决方案之一时遇到问题。我使用以下 dockerfile:
# 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
Run Code Online (Sandbox Code Playgroud)
我的构建步骤如下:
docker build -t mvcbarometer .
docker run -d --name barometer mvcbarometer
docker inspect -f "{{ .NetworkSettings.Networks.nat.IPAddress }}" barometer
Run Code Online (Sandbox Code Playgroud)
一切正常,但在访问该站点时出现以下错误:“您要查找的资源有问题,无法显示。”
出于某种原因,即使我使用相同的配置,我也无法获得通过 Visual Studio 调试时显示的经典黄色错误页面。
docker 似乎没有在任何地方记录任何错误,所以我有点困在调试问题上。我的其他(更基本的)项目在类似的 docker 构建设置下运行良好。
我在某处读到 docker 对某些 web.config 元素有问题,但我找不到有关该主题的任何真实文档。
有人可以帮我调试问题吗?
我终于找到了问题所在。我正在使用 url rewrite 2.0 功能,但忘记将其安装在 docker 映像中。
将以下内容添加到我的 docker 文件中解决了问题:
# Install Url Rewrite
ADD https://download.microsoft.com/download/C/9/E/C9E8180D-4E51-40A6-A9BF-776990D8BCA9/rewrite_amd64.msi /install/rewrite_amd64.msi
RUN msiexec.exe /i c:\install\rewrite_amd64.msi /passive
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4638 次 |
| 最近记录: |