今回は、デプロイの一例として、GitHub Desktop を使った Web アプリの GitHub へのプッシュ でご紹介した GitHub リモート リポジトリの Web アプリ(NodejsWebApp1)を、Microsoft Azure へデプロイしていきたいと思います。
言うまでもなく、Microsoft が運用するクラウド プラットフォームで、Windows 仮想環境だけでなく、Web アプリの運用もカバーする多様なサービスを提供しています。
※ ご紹介する画面遷移は2019年4月時点のものです。今後当該サービスプロバイダーによって変更される可能性があります。
GitHub リモート リポジトリのデプロイ
- GitHub 同様、Azure を利用するために Microsoft アカウントが必要です。Microsoft アカウントをお持ちでなければ、https://azure.microsoft.com/ja-jp/free/ からアカウントを作成してください(無償)。
- Microsoft アカウントで Azure ポータル(https://portal.azure.com/)にサインインしたら、ページ左から「App Service」を選択します。
- App Service ページが表示されたら、「+ 追加」を見つけてクリックします。
- Web App 作成ページが表示されます。「アプリ名」欄にデプロイするアプリの名前を入力してください。この入力が新規作成する「リソースグループ」の名前と「Application Insight」に反映されるだけでなく、URL の一部になる点にも配慮してください(例:aaa とした場合、https://aaa.azurewebsites.net/ になる)。ここは、GitHub 上のリモート リポジトリ NodejsWebApp1 にしたいところですが、既に他の開発者が同じアプリ名でデプロイ済のようなので、NodejsWebApp1-app としておきます。
- [作 成] ボタンをクリックしてアプリの仮想環境を作成します。
- デプロイが進行中である旨、メッセージが表示されます。デプロイが完了するのに少し時間がかかりますので、そのままお待ちください。
- デプロイした Web アプリとともに、他の Web アプリ(もし、あれば)が一覧表示されるはずです。ここでは、いまデプロイした Web アプリを設定していきますので、アプリ名 NodejsWebApp1-app のリンクをクリックしてください。
- NodejsWebApp1-app アプリの構成ページが表示されます。左手のデプロイ センターをクリックしてください。
- デプロイ センター ページでは、デプロイ済の NodejsWebApp1-app アプリと GitHub リモート リポジトリ NodejsWebApp1-app を関連付けをおこないます。ページ中の [GitHub] をクリックして(①)、ページ下の [続 行] をクリックしてください(②)。
- [App Service のビルド サービス] をクリックして(①)、ページ下の [続 行] をクリックしてください(②)。
- GitHub アカウント名(ユーザ名)、リモート リポジトリ名、ブランチ名を入力/選択して(①)、[続 行] をクリックします(②)。
- ここまで操作・設定したサマリーが表示されるので、内容を確認後、[完了] をクリックします。
- しばらく時間がかかりますが、設定した内容がデプロイに反映されます。処理完了(セットアップのデプロイ完了)のメッセージが表示されたら、NodejsWebApp1-app アプリの「概要」をクリックして(①)、デプロイ済の URL をクリックしてください(②)。
- デプロイ済の NodejsWebApp1-app の URL https://nodejswebapp1-app.azurewebsites.net/ でアプリが実行されるはずです。
他の Azure Web App Serviceu 環境
今回は Node.js を使ったアプリをデプロイしましたが、Azure の App Service には他にもさまざまな環境が用意されています。必要に応じて https://docs.microsoft.com/ja-jp/azure/app-service/を確認してみてください。
Azure へのデプロイには他にもいくつか方法があります。もし、Web アプリの開発作業に Visual Studio をお使いであれば、Visual Studio から直接デプロイすることが可能です。次回は、その方法をご紹介します。
By Toshiaki Isezaki
コメント
コメントフィードを購読すればディスカッションを追いかけることができます。