はじめに
コンテナは単一でも沢山メリットがあるので私の回りでも良く使われています。
Azureを久しぶりに触っていきなりAKS動かしてみましたが、
単一コンテナを利用する場合にはAKSはちょっとメンドクサイ。
ということで、Web App on Linuxがよさそうでしたので早速試してみました。
(AWSだとElastic Beans Talk的な感じですね)
初めての操作で1時間くらいでできて、2回目は10分でデプロイできます
(1時間のうちのほとんどは環境変数WEBSITES_PORTの存在に気付かなかったことです・・・)
コンテナレジストリにDockerHub使った例はWeb上に転がっていたので、ACRでやってみました。
AKSと違い、何も設定せずともイメージをpullできたので、特に難しい部分はありませんでした。
準備
AKS同様ACRのリポジトリを使おうと思います。こちらの記事を参考にACRにpushしてみてください。
AzureContainerRegistryにprivateイメージをpushしよう
今回使うリポジトリ名はuzresk0627です。
早速やってみよう
App ServiceをクリックしてWeb App on Linuxを選択します。(みつけにくいです)
必要事項を入れていきます。
「コンテナの構成」はACRを選択したときに補完候補がでてくるので入力が楽ですね。
すこし待つとリソースが構築されます。
ログの有効化
トラブルシュートにはログですね。ログの設定はデフォルトでは無効になっています。
有効化しないと切り分けができないので、有効化しておきましょう。
Retentionの期間は適当に入力します。(おこのみで)
環境変数の設定
コンテナの引数に環境変数を設定するには「アプリケーション設定」から行います。
任意の設定が入れられます。
WEBサイトを公開するときに必須になるのはWEBSITES_PORTです。忘れない様に入れておきましょう。
動かしてみる
環境変数の設定が終われば動かすだけです。コンテナの再起動をしましょう。
すこし待って、ドメインにアクセスして確認しましょう
トラブル対応
ローカルの環境で動作確認が取れているのであれば、あまり失敗することはないと思いますが、ログと環境変数の確認の仕方くらいは覚えておいた方が良さそうです。
ログの確認
すこし待つとログが見れますので、「コンテナの設定」をクリックしてエラーがでてないことを確認しましょう。
環境変数の確認
環境変数が正しく設定されているかはKudoを起動してみると良さそうです。
その他
カスタムドメインの設定
CNAMEを設定してあげれば問題なくカスタムドメインも利用できます。
SSLについてはドメインに紐付くものなのでカスタムドメイン利用時には別途証明書を用意する必要があります。
さいごに
AWSでいうEBの位置づけで、単一のコンテナであればこれで十分ですね。
最低限必要なログもしっかり機能統合してあるし、デプロイなどもサポートされていてとても良い感じでした。









