「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る --[[ASP.NET]] --[[デプロイ]] * 目次 [#w750c785] #contents *概要 [#ecf7d346] コンテンツと構成をIISに同期するための拡張可能なクライアントサーバーツール *詳細 [#v18ba301] Web Deployを使用すると、IIS移行や、高度な「発行」ができるらしい。~ **発行 [#sef03e5b] そもそも「発行」は[[Visual Studio]]単体でも実行できる。 ***範囲 [#gec84374] 発行の対象は以下のとおり。 -IIS の構成 -コンテンツ ***形式 [#e75ef8c3] 以下のような発行形式がある。 -[ファイル システム] -[FTP] -[[[Web Deploy>#r93c0711]]] -[[[Web Deploy パッケージ>#tc52f4e7]]](zip) **Web Deploy [#r93c0711] Web Deploy形式の発行には、以下のインフラが必要になる。 ***クライアント [#obf31c44] 発行を行う。 -CUI~ msdeploy.exe -GUI~ 以下のGUIがあるが、裏で前述のCUIを利用しているものを思われる。 --WebMatrix ---Web Management Service --[[Visual Studio]] ---Web Deployment Agent Service ---Web Management Service [[Visual Studio]]のほうが新旧をサポートするが、~ WebMatrix自体が古いので、[[Visual Studio]]を使用する。 ***サーバ [#vbe7f982] 発行を受信して処理する(エージェント)。 -Web Deployment Agent Service --古い --旧OSのサポート -Web Management Service --新しい --新OSで同梱 **Web Deployパッケージ [#tc52f4e7] ***用例 [#feb98eb1] -以下のような場合に、この形式を使用する。 --Web Deployで直接IISに発行しない場合 --AzureのPaaSなどにデプロイする場合 -古くは、以下のようなファイルでPaaSにデプロイしていた。~ (そう言えば、何やら見覚えがあるなぁ...と。) --サービス定義 (.csdef) --サービスの構成 (.cscfg) --サービス パッケージ (.cspkg) -ただ、最近は、以下のような形式に変わってきている。~ (下記のカスタムの[[MSDeployプロバイダ>#ibb30b3b]]と思われる。) (下記の、カスタムの[[MSDeployプロバイダ>#ibb30b3b]]と思われる。) --Azure App Service --Azure Virtual Machines --ファイル システム --カスタム ターゲット (IIS、FTP など) ***参考 [#a504ba4b] -Windows Azure Webサイトを WebDeploy Package で配置する - ROMANCE DAWN for the new world~ http://gooner.hateblo.jp/entry/2014/02/05/websites-webdeploy/ -Web Deploy as a site extension | ブログ | Microsoft Azure~ https://azure.microsoft.com/ja-jp/blog/web-deploy-as-a-site-extension/ -デプロイの概要 - Visual Studio | Microsoft Docs~ https://docs.microsoft.com/ja-jp/visualstudio/deployment/deploying-applications-services-and-components-resources?view=vs-2019 **MSDeployプロバイダ [#ibb30b3b] -Web配置の特定のソースまたは宛先データを処理する。 -Webアプリケーション以外を対象にしたプロバイダーも存在する。 ***RDB [#lad1a4da] -dbFullSql : SQL Server database deployments -dbSqlPackage : SQL Server/SQL Azure database deployments -dbDacFx : DACPAC-based SQL database deployments -dbMySql : MySQL database deployments -dbSqlite : Sqlite database deployments ***参考 [#e7b2ae6c] -Web Deploy Providers | Microsoft Docs~ https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd569040(v=ws.10) *移行 [#h95c160a] -発行機能を応用した移行も可能。 -既存サイトをアーカイブして別のサイトに発行する。 **手順 [#c4166161] ***Web Deploy ツールのインストール [#w3ef27df] ***移行元および移行先のバックアップ [#kde5ee86] -失敗の際もリストア可能なようにしておく。 -バックアップ・リストアにはappcmd.exeを使用する。 ...\appcmd.exe add backup <任意のバックアップ名> ...\appcmd.exe restore backup <復元したいバックアップ名> ***依存関係の確認とインストール [#f02b7788] -移行先サーバにインストールが必要なコンポーネントがXMLで出力される。 -あくまでツールで確認できる範囲なので、過不足がある可能性がある。 ***アーカイブ取得とアーカイブ発行 [#ufe357c8] -ここが実際の移行作業になる。 -whatif フラグを指定してコマンドを実行すると、事前の、動作検証ができる。 *参考 [#x46beedb] -連載:いまどきのソース・コード管理 - @IT --第5回 配備を自動化する (1/4)~ https://www.atmarkit.co.jp/ait/articles/1311/15/news096.html -Web Deployの整理 - redwarrior’s diary~ https://redwarrior.hateblo.jp/entry/2016/12/27/090000 **発行 [#l5eea56b] -リモートのIISへVisual StudioからWebアプリをWeb Deployする - nuits.jp blog~ http://www.nuits.jp/entry/iis-web-deploy -Windows Server/IIS/Web Deployインストール - yanor.net/wiki~ http://yanor.net/wiki/?Windows%20Server%2FIIS%2FWeb%20Deploy%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB **移行 [#pa0fef2b] -Web Deploy ツールを利用した IIS の移行方法~ Microsoft Japan IIS / Azure Bot Service Support Team~ https://blogs.technet.microsoft.com/jpiis/2018/02/15/webdeploytool_migration/ ---- Tags: [[:デプロイ]], [[:.NET開発]], [[:ASP.NET]]