2016-04-07 10 views
0

私はEntityFramework 7をasp.net 5のMicrosoft SQL Serverで使用しています。EntityFramework.MicrosoftSqlServer:7.0.0-rc1-finalを使用しています。 WebアプリケーションをVisual Studioで実行すると、すべて期待どおりに機能します。 しかし、Dockerでアプリケーションを実行したいと思います。私はasp.netアプリケーションを実行するための公式ドッカーの画像を使用しています: マイクロソフト/ ASPNET:1.0.0-RC1-UPDATE1-coreclrMicrosoft SQL ServerがDockerで動作しないEntity Framework 7

をここに私のdockerfileです:1.0.0-RC1:

マイクロソフト/ ASPNET FROM -update1-coreclr

COPY project.json /アプリ/

WORKDIR /アプリ

RUN [ "DNU"、 "復元"]

COPY。 /アプリ

ARG CONTAINER_PORT = 5000

ARG SERVER_URLS =のhttp:// *:$ CONTAINER_PORT

ENV SERVER.URLS $ SERVER_URLS

$ CONTAINER_PORT

ENTRYPOINT [「DNXを公開"、" -p "、" project.json "、" web "]

ドッカーでビルドは成功しましたが、アプリケーションを実行するとアプリケーションの後に次のエラーが発生します

アプリケーション起動例外:System.IO.FileLoadException:ファイルまたはアセンブリ 'app、Culture = neutral、PublicKeyToken = null'またはその依存関係の1つを読み込めませんでした。一般的な例外(HRESULTからの例外:0x80131500) [36mwebapi_1 | [0mファイル名: 'app、Culture = neutral、PublicKeyToken = null' ---> Microsoft.Dnx.Compilation.CSharp.RoslynCompilationException:/app/Startup.cs(33,18):DNXCore、バージョン= v5.0エラーCS1061 : 'EntityFrameworkServicesBuilder'には 'AddSqlServer'の定義が含まれておらず、 'EntityFrameworkServicesBuilder'タイプの最初の引数を受け入れる拡張メソッド 'AddSqlServer'が見つかりませんでした(使用するディレクティブまたはアセンブリ参照がありません)。

問題は 'AddSqlServer'コマンドにあるようです。奇妙なことは、それがビジュアルスタジオから構築され実行されたときに機能することです。誰もがこの問題について何か知っていますか?

ありがとうございました。

答えて

0

ドライブをDockerホストと明示的に共有してください。 docker-machineを使用している場合、これはVirtual Boxのデフォルト設定です。 Docker for Windowsベータ版をお持ちの場合は、タスクバーのアイコンから設定を行うことができます。拡張メソッドが欠落していても、Dockerがそのメソッドにアクセスできないということだけではありません。