「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
手順 †
以下の手順で検証・評価した。
環境 †
- Win 10 Pro
- Hyper-Vの有効化
- VS 2017 Community
- .NET Core 2.0
プロジェクトの作成 †
ASP.NET Core MVCアプリケーションの作成
プロジェクトの設定 †
- プロジェクトを作成した後にプロジェクトを右クリックしてDockerサポートを追加
インストレーション †
デバッグ実行の準備 †
- デバッグのドロップダウン・リストからDockerを選択した状態でデバッグ実行しようとすると、以下のエラー・メッセージが表示されるが、
Docker CE for Windows(Docker Community Edition for Windows)はインストール済みであるので、PCの再起動を行ってみる。
- 再起動後、Hyper-V上にLinux VMを確認できる(MobyLinuxVM)。
- 再度デバッグ実行を行うと、以下のエラー・メッセージが表示される。
- エラー・メッセージが以下のように変更される(Dockerが実行されていないとのこと)。
- 暫く経つと、以下のダイアログが表示された。
OKを押下して再起動する(再起動に少々時間がかかる)。
- 再起動を行うと、以下のダイアログボックスが表示されている(ログインはしなくてもいい)。
- デバッグ実行を開始すると、以下のcmdが起動し「何か」がダウンロードされ、
- 次いで、以下のエラー・メッセージが表示されるので、
- 設定完了後、再度デバッグ実行を行うと、以下のダイアログが表示されるので、
[アクセスを許可する]ボタンを押下し、VPNKitと言う組込みVPNツールのリスニング・ポートを開放する。
ブレークポイントを設定してデバッグ実行する。 †
- ブレークポイントを設定して実行すると、
以下のように、適切にデバッグ実行されていることを確認できる。
- 本当にLinux上で動いているか心配なので、念のため、以下で確認する。
環境についての確認を行う。 †
- 後者のDBへのアクセスが可能かどうかDBMSアプリケーションを使用して確認する。
(DBMSアプリケーションとしては、ASP.NET Core対応されたOpen棟梁テンプレートを使用する。)
設定ファイル読み込み方法の変更 †
- 早速エラーが発生。DBアクセス以前に設定ファイルへのアクセスができない。
- 以下のように調査すると、プロジェクト内のファイルがカレント・ディレクトリ(/app)にデプロイされることが解る。
- プロジェクト内にファイルを配置し、
(「リンクとして追加」の設定はNG、「出力ディレクトリにコピー」の設定は不要)
これを読み取る方向性で対応するか、
- 旧Azure PaaS時と同様に、埋め込まれたリソースで対応できる。
設定の仕方は、以下の「Azure Web Apps」で動作させる方法が参考になる。
SQL Serverへの接続 †
ホスト側のDBで動作させようとしたが、ハマりどころが多かったのでメモ。
- 接続文字列
- ホストのIPアドレスは、10.0.75.1になる。
- Windows認証ではなく、SQL Server認証の接続文字列を使用する。
- Windows ファイアウォール
- 必要時応じて設定する。
- OFFにして通ったら絞るのがイイ。
- SQL Server 構成マネージャー
Expressの場合は、SQL Server 構成マネージャーの設定も必要にある。
変更点のスクショ †
以下は、ASP.NET Core MVCのOpen棟梁テンプレートの変更点のスクショです。
余談 †
PDBのタイプ †
Docker側でライブラリのデバッグをする場合、ライブラリのPDBが、
「完全(full)」ではなくて、「ポータブル(portable)」である必要がある。
参考 †
Microsoft Docs †
きよくらの備忘録 †
銀の光と碧い空 †
Tags: :.NET開発, :.NET Core, :Hyper-V, :仮想化