pro aspnetmvc3framework chap23

17
@84zume Pro ASP.NET MVC 3 Framework CHAPTER 23 Deployment

Upload: hideki-hashizume

Post on 11-Jul-2015

384 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Pro aspnetmvc3framework chap23

@84zume

Pro ASP.NET MVC 3 Framework CHAPTER 23

Deployment

Page 2: Pro aspnetmvc3framework chap23

目次

1. デプロイが完了するまでの作業

1. プロセス

2. ツール

2. ビルド

1. ビュー以外のビルド

2. ビューのビルド

3. パッケージ作成

1. Web.config変換

2. DBの移行準備

4. デプロイの方法

2

Page 3: Pro aspnetmvc3framework chap23

デプロイが完了するまでの作業

1. プロセス

2. ツール

3

Page 4: Pro aspnetmvc3framework chap23

デプロイが完了するまでの作業 4

アプリ 保存

ビルド テスト パッケージ 作成

デプロイ

ビュー以外のビルド ビューのビルド

Web.config変換 ファイルコピーデプロイ デプロイメントパッケージデプロイ ワンクリック発行 Binデプロイ

プロセス

ツール

• Visual Studio (開発) • MsBuild (ビルドとパッケージ作成) • MsTest (コンポーネントテスト) • Web配置ツールとWeb配置エージェント

Page 5: Pro aspnetmvc3framework chap23

ビルド

1. ビュー以外のビルド → 特に話なし。

2. ビューのビルド

5

Page 6: Pro aspnetmvc3framework chap23

ビューのビルド

• ビルド時にビューの構文エラーを発見できる

• プロジェクトファイルを変更する

• 開発時、常にビューをビルドするのは重たい ビルドサーバー上のみで実行するのが良さそう

aspnet_compiler.exeが使えそう

Msbuild /p:MvcBuildViews=true XXXX.sln ってすればOK

6

<PropertyGroup> ... <MvcBuildViews>true</MvcBuildViews> </PropertyGroup>

メリット

方法

懸念

Page 7: Pro aspnetmvc3framework chap23

デモ

1. Viewを記述間違えする。

1. @name -> @nam

2. ビルドする。

3. 実行時に、間違えに気付く。

1. MvcBuildViewsをtrueに変える

2. Viewを記述間違えする。

1. @name -> @nam

3. ビルド時に、間違えに気付く。

7

Page 8: Pro aspnetmvc3framework chap23

1. Web.config変換

2. DBの移行準備 → 特に話なし。

パッケージ作成

8

Page 9: Pro aspnetmvc3framework chap23

Web.config変換 -概要-

Web.config変換とは…

パッケージ作成時に、ビルドモードに応じて、

設定項目の追加・削除・変更などを行う機能

• DB接続文字列(開発用DBと本場用DB)

• デバッグやログ情報出力管理(開発だけ出力する)

9

Web.config

Web.Debug.config

Web.Hoge.config

Web.Release.config Web.config パッケージ作成

良く使われる場面

Page 10: Pro aspnetmvc3framework chap23

Web.config変換 -たとえば-

• Web.config本体

• Web.Release.config

• パッケージ化された後のWeb.config (完成形)

10

<system.web> ・・・ <compilation debug=“true” targetFramework=“4.0”/> </system.web>

<system.web> ... <compilation xdt:Transform=“RemoveAttributes(debug)” /> <httpCookies domain=“” requireSSL=“true” xdt:Transform=“Insert”/> </system.web>

<system.web> ... <httpCookies domain=“” requireSSL=“true”/> </system.web>

Page 11: Pro aspnetmvc3framework chap23

デプロイ

11

Page 12: Pro aspnetmvc3framework chap23

デプロイの種類 その1

ASP.NETアプリケーションのデプロイ方法は多々ある。

1. ファイルをコピーしてデプロイする

• 一番初歩的な方法。避けるべき。

• どこかで間違える可能性が大きい。

コピーするファイルを間違えるとか。

コピー先を間違えるとか。

2. デプロイメントパッケージを使ってデプロイする

• 一番良いと思う方法。推奨。

• MsBuildでパッケージを作る。

• IISもしくはPowerShellを使って、そのパッケージを読み込む。

12

Page 13: Pro aspnetmvc3framework chap23

デプロイの種類 その2

3. ワンクリック発行

• 便利だけど、準備が大変な方法。開発用途ならかなり使える。

• サーバー側に「Web配置」機能(エージェント機能!)をインストールする必要がある。

4. Binデプロイ

• サーバーにMVC3が

インストールしてなくてもOK。

13

Page 14: Pro aspnetmvc3framework chap23

デモ

1. 配置パッケージの作成

2. 配置パッケージの確認

3. PoweShellにて実行をしてみようとする。

14

Page 15: Pro aspnetmvc3framework chap23

最後に

15

Page 16: Pro aspnetmvc3framework chap23

まとめ

1. ビルドに詳しくなるべし!

MsBuildは難しいから、psakeを覚えると良いと思う。

2. 常時デプロイできるように準備すべし!

必要となるときにすぐデプロイできるのは重要

3. CIの勉強をすべし!

16