LoginSignup
1
3

More than 5 years have passed since last update.

Azure App Service へASP.NET Web アプリをコマンドプロンプトからデプロイする

Last updated at Posted at 2016-12-04

はじめに

Azure App ServiceをVisualStudioを起動せずに、コマンドプロンプトからデプロイしたい。

準備

下記のサイトを参考にAzure App Serviceを作成します。
   Visual Studio を使用した Azure App Service への ASP.NET Web アプリのデプロイ

デプロイに必要な情報を手に入れる

VisualStudioから一度デプロイを実行すると、デプロイに必要な情報が入ったファイルが作成されます。
 C:\MyExample\MyExample\Properties\PublishProfiles\[AppServiceのリソース名].pubxml

Azureポータルからデプロイのためのプロファイルを手に入れる

次に、Azureポータルを開き、準備で作成したApp Serviceのプロファイルをダウンロードします。

リソースグループ > [準備で作成したリソースグループ] > [AppServiceのリソース名] > 概要

下記の発行プロファイルの取得をクリック
発行プロファイルを取得.png

ダウンロードしてきた[AppServiceのリソース名].PublishSettingsの中にある<userPWD>タグの内容をコピーしておきます。

コマンドプロンプトからデプロイする

いよいよ、コマンドプロンプトからデプロイを実行します。デプロイにはMSBuildを使用します。
VisualStudio2015ではMSBuildは下記にあると思います。
 C:\Program Files (x86)\MSBuild\14.0\Bin
VisualStudioのバージョンによってMSBuildのパスが異なるため注意が必要です。1
  
コマンドプロンプトを開き、下記のコマンドを実行することでデプロイできます。
MSBuild C:\MyExample\MyExample.sln /p:DeployOnBuild=true /p:PublishProfile="[AppServiceのリソース名]" /p:Password=[発行プロファイルから取得したパスワード]

準備で公開したサイトへ再度アクセスし、変更を確認します。
今回は、タイトルを"ASP.NET"から"Deploy Succeed"に変更しました。

デプロイ成功.png

その他

pubxmlファイルについて

初回の作成をVisualStudioに任せてしまったので、pubxmlのファイル名が[AppServiceのリソース名]と同じです。しかし、内容さえ間違っていなければファイル名はなんでも良いようです。
また、一度pubxmlファイルを作成してしまえば他のWebアプリの発行する際にも使いまわせます。開発用とリリース用などで使い分けると便利だと思います。

パスワードについて

今回パスワードはコマンドを実行する際に入力していますが、先ほどのpubxmlに含めることができます。
含める場合はpubxmlファイルの<PropertyGroup>タグ内に<Password>タグを追加し[発行プロファイルから取得したパスワード]を入力します。

デプロイするユーザについて

デプロイに使用するユーザとパスワードはpubxmlファイルを作成した際に自動で作られているようですが、Azureポータルから追加し使用することもできます。
デプロイ資格情報.png

追加した場合は、pubxmlの<UserName>タグと<Password>タグに情報を記述するか、2つのタグを削除しコマンド上で下記を追加するかです。
/p:UserName=[追加したユーザ名] /p:Password=[追加したパスワード]

おわりに

調べ方が悪く、なかなか方法がわかりませんでした。
自分の備忘録的にまとめましたが、同様のことをやろうとしている方の参考なれば幸いです。

参考URL

下記のURLがとても参考になりました。ありがとうございます。
ASP.NET Web Deployment using Visual Studio: Command Line Deployment
Azure App Service へのアプリのデプロイ

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3