Dockerを使用してパフォーマンスの良いASP.NETコアデプロイメントを設定するには、thisという記事を続けました。Dockerを使用したASP.NETコアのデプロイメントで "ディレクトリ名/ app/Views/is invalid"
を未処理の例外:System.Reflection.TargetInvocationException:例外はによってスローされた私は、私はビューパスが存在されていないことを、例外を持っありを呼び出す
docker run
を使用してコンテナを起動しようとするまで、これは動作します呼び出しのターゲット。 ---> System.ArgumentException:ディレクトリ名/ app/Views /が無効です。
、真dotnet publish
エリアによって作成されたフォルダ内に、原因だけdllファイルなしViewフォルダのthats:原因ViewフォルダをあまりにwwwrootのようなpublishOptions
に含まれて、私はこれを理解カント
[email protected]:/etc/jenkins/workspace/App# ll publish-output | grep View
-rwxr--r-- 1 root root 237K Aug 31 19:26 Microsoft.AspNetCore.Mvc.ViewFeatures.dll
をまた、不足している:
"publishOptions": {
"include": [
"wwwroot",
"Views/**/*.cshtml",
"Areas/**/*.cshtml"
]
},
を私はまた、代わりに"Views/**/*.cshtml"
の"Views"
を試みたが、動作していません。私の理解では、publishOptions
は、dotnet publish
を使用している場合、それらのフォルダをpublishing-directoryにコピーする必要があります。
私は間違っていますか?
ビルドにはmicrosoft/aspnetcore-build:1.0.1
イメージ、記事ではベストプラクティスとして推奨されているようにアプリを起動するにはmicrosoft/aspnetcore:1.0.1
を使用しています。
更新 Linuxでのみ問題があるようです。私のWin10開発マシンはうまく動作します。そこには、主なアプリやエリアから期待どおりに公開されたビューフォルダがあります。
UPDATE#2ドッカーハブのの例を使用すると、その機能も無効になります。
UPDATE#3 Visual Studioを使用してWindows 10開発マシンで新しいASP.NET Core MVCプロジェクトを作成し、それをLinuxボックスに転送しました。動作していません。ビューが表示されません。
UPDATE#4dotnet new -t web
を直接Linuxのボックスに使用して新しいアプリケーションを作成しました:期待どおりの作品!
UPDATE#5私はLinuxサーバに作成したフォルダを移動し、Windowsマシン上でdotnet new -t web
を実行しました:動作しない - 奇妙な...