Azure App Service の新機能 - Web App on Linux (プレビュー)
執筆者: Apurva Joshi (Principal Program Manager, Azure App Services)
このポストは、5 月 11 日に投稿された See what’s new for Azure App Service - Web App on Linux (Preview) の翻訳です。
Web App on Linux (プレビュー) は、Linux の Docker コンテナーでクラウド アプリをネイティブに実行できるようにする機能です。これを使用すると、既存の Linux プラットフォームでホストされ、Linux 用に最適化されたアプリを Azure App Service に簡単に移行できます。また、Docker コンテナーのカスタマイズがサポートされているため、Docker ツールや Azure App Service の最先端の PaaS 機能に加え、さまざまなプログラム言語やプログラミング スタックのアプリケーションの実装が可能になります。
今回リリースする多数の開発者向け PaaS 機能は、Linux のアプリケーション構築や、コンテナーにパッケージ済みのアプリケーションの実装に利用できます。継続的インテグレーション (CI)、テストおよびステージング環境、運用環境でのテスト、パフォーマンス テスト、SSH サポートなどの機能を活用することで、生産的な開発が実現します。
また、Web App on Linux の提供地域を、これまでの米国西部、西ヨーロッパ、東南アジアに加えてオーストラリア東部リージョンに拡大いたします。
この記事では、App Service on Linux プレビューの主な新機能をご紹介します。
サイトのスロットとスワップ
Azure App Service で人気のデプロイ スロット機能を、Linux 上のコンテナーでも使用できるようになります。既存のアプリケーションを「スロット」に複製し、運用前スロットと運用スロットの間でスムーズにスワップできます。デプロイ スロットの詳細については、こちらのドキュメントを参照してください。なお、「プレビュー付きスワップ」、「ロールバック」、「アプリケーションのウォームアップ」などの高度な機能も近日追加する予定です。
自動スケール
App Service on Linux とコンテナー アプリを、オンデマンドまたは自動でスケーリングできるようになります。今回のリリースでは、CPU、ディスク キューの長さ、メモリのトリガーの自動スケールをサポートし、他の種類のトリガーも今後追加する予定です。
SSH の使用
管理エンドポイントからアプリに対して SSH (WebSSH) を使用できるようになります。この機能は、https://<mysite>.scm.azurewebsites.net/webssh/host にアクセスしてお試しいただけます。
SSH のサポートおよび App Service on Linux の注意事項については、こちらのドキュメントを参照してください。
注: SSH サーバーは、「ストック」のコンテナーや組み込みイメージのすべてにインストールされています。カスタマイズされた Docker コンテナーで SSH を使用する場合は、SSH サーバーをインストールする必要があります。組み込みイメージの一覧はこちら (英語) でご確認いただけます。
VSTS で継続的配信をセットアップ
Visual Studio Team Services の継続的配信機能では、Linux やコンテナー アプリ用の堅牢なデプロイ パイプラインを簡単にセットアップできます。このパイプラインでは基本的に、作成したコンテナー イメージをコンテナー レジストリにプッシュし、新しいイメージを Azure App Service にデプロイします。その他の Linux アプリやコンテナー アプリを追加すれば、運用開始前に変更内容を検証することができます。独自の機能テストを作成して、各ステップの動作確認を行うこともできます。VSTS を利用した継続的配信の詳細については、こちらの記事 (英語) を参照してください。
Docker Hub からの Docker イメージの CI/CD
Docker Hub に新しいバージョンのカスタム Docker イメージがプッシュされると、自動的に再デプロイできるようになります。
- Docker Hub で Web フックをセットアップし、管理エンドポイントにプッシュします。
https://<publishingusername>:<publishingpwd>@<sitename>.scm.azurewebsites.net/docker/hook - App Service で [Application Setting] から DOCKER_ENABLE_CI という設定を作成し、値を TRUE に設定します。
詳細については、こちらのドキュメント を参照してください。
Linux に WordPress をデプロイ
今回のリリースに続いて、App Service で Azure Database for MySQL (プレビュー) を新たにサポートします。これにより、Azure Database for MySQL (プレビュー) をバックエンドとする WordPress パッケージを、Windows と Linux の App Service Web Apps に簡単にインストールできるようになります。App Service on Linux での WordPress の作成方法は、こちらの記事 (英語) を参照してください。
App Service on Linux の試用
Web App on Linux で App Service をお試しいただける環境を提供いたします。Azure へのサインアップやクレジット カード情報の提示なしに、App Service で Linux やコンテナー ベースのアプリを無料で作成できるようになります。
詳細については、こちらの記事 (英語) をご覧ください。
その他の機能
- ワイルドカード ドメイン名のサポート: Web アプリにワイルドカード ドメイン名 (*.constoco.com のような形式) を割り当てられるようになります。
- 運用環境におけるテスト (TiP) : この機能では、一定割合のトラフィックをアプリケーションのスロットまたはベータ版サイトにリダイレクトできます。詳しくはリンク先を参照してください。
- Always On : Web アプリを常時実行させ、アイドル タイムアウトによるコールド スタートを発生させないようにする機能です。詳しくはリンク先を参照してください。
- Azure ポータルおよび API からのサイトの再起動: このオプションでは、コンテナーや Web アプリを再起動できるようになります。コンテナーは、キャッシュされているイメージから強制的に再読み込みされます。
- カスタム イメージで PORT を自動検出: Web アプリの AppSetting で PORT を設定する必要がなくなります。Docker ファイルの内容を読み取り、内部の PORT 設定を自動的に構成します。これにより、アプリケーションがリッスン中となります。アプリケーションで既に PORT が設定済みの場合は、そちらの設定が優先されます。
多くのユーザーの皆様に、今回ご紹介した新機能をお役立ていただけますと幸いです。ご不明な点がありましたら、よく寄せられる質問のページを参照してください。
アイデアやご意見などがありましたらお気軽に UserVoice (英語) までお寄せください。その際は、タイトル冒頭に [Linux] または [Container] と記載してコメントいただくようお願いいたします。