web.config 出现在 microsoft/aspnet:4.6.2 Windows 容器中时出现错误 500

Error 500 when web.config is present in microsoft/aspnet:4.6.2 Windows container

我正在尝试将我的 ASP.NET 站点放入 Windows 容器中(它目前还不能移动到 .NET Core)。当我刚刚将我的应用程序复制到 inetpub\wwwroot 时,我收到错误 500。我什至尝试设置详细错误和 web.config 文件中的所有内容,但我仍然收到 "same" 错误。

我尝试删除文件并注释掉我的 web.config 直到它再次开始工作,但一直没有运气。

所以我意识到即使 web.config 为空,网站也会失败。现在我有一个打印 "Hello World!" 的 default.html 文件,一切正常,直到我在该目录中添加一个空的 web.config。

这让我抓狂!

1) 有没有办法查看真正的错误或更好地描述容器内部发生的情况?我试过事件查看器 (Get-EventLog) 和 IIS 的日志,但没有成功。

2) 这到底是怎么回事?这甚至与我的问题有关吗?也许 web.config 为空的站点总是失败 :(

编辑:我的 Dockerfile 无关紧要,因为我只是启动 microsoft/aspnet:4.6.2 图像的容器。 docker run -d -p 8888:80 microsoft/aspnet:4.6.2
容器启动后,我进入:
docker exec -it mycontainer powershell
进入后,我创建了 default.html 文件,如下所示:
echo "Hello World!" > default.html
如果我然后转到 http://localhost:8888/default.html,我会看到正确的 Hello World 消息。之后,我创建了一个虚拟的 web.config,内容如下:
echo "" > web.config
当我刷新 default.html 文件时,出现 500 错误 :(

Web.config 应包含 configuration 元素。问题不 docker 具体。 https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/configuration-element