2

Docker for Windowsで自分のソリューションを実行しているときに問題が発生しています。 私は、次のdockerfileを使用し、次のようDocker for windows - 内部サーバーエラー

# 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 

私のビルド手順は次のとおりです。

docker build -t mvcbarometer . 
docker run -d --name barometer mvcbarometer 
docker inspect -f "{{ .NetworkSettings.Networks.nat.IPAddress }}" barometer 

すべてが罰金構築しますが、サイトを訪れたとき、私は次のエラーを取得する:「に問題がありますあなたが探しているリソースは表示できません。

- http://imgur.com/a/areF8

私は、Visual Studioによってデバッグするとき、私は同じ設定を使用していたとしても、示されている古典的な黄色のエラーページを取得することはできませんいくつかの理由。

ドッカーがどこのエラーを記録しているようには見えないので、問題のデバッグにちょっと悩まされています。 私の他の(より基本的な)プロジェクトは、同様のドッカービルドセットアップでうまくいきます。

ドッカーは特定のweb.config要素に問題がありますが、その件に関する実際のドキュメントは見つかりません。

誰でも問題のデバッグに手伝ってもらえますか?

答えて

2

最後に問題が見つかりました。 私はurl rewrite 2.0の機能を使用していましたが、ドッカーのイメージにインストールするのを忘れてしまいました。

は私のドッキングウィンドウのファイルに次の追加問題を解決:

# 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 
0

iisにはディレクトリへのアクセス権が不足しているようです。 wwwrootディレクトリのアクセス許可をコピーして新しいサイトに割り当ててください。

RUN Set-Acl -Path c:\barometer -AclObject (Get-Acl -Path "C:\inetpub\wwwroot"); 
+0

のほか、 "RUNに設定し-ACL -PathのC:\バロメーター-aclobject(ゲット-ACL -Path" C:\のinetpub \ wwwrootに");"ドッカーファイルには何も変わりませんでした。 元の投稿に記載されているように、「私の他の(より基本的な)プロジェクトは、同様のドッカービルド設定でうまくいきます」という理由で、フォルダへのすべてのアクセス権が正しいと思われる理由は何ですか? – antontj