Azure App Service

#Azure#MicroSoft#paas

Azure App Serviceについてまとめました。   随時更新します。普段Pythonを使うので主にそういう視点からのコメント・考察が多いです。 それぞれの構築手順へのリンクも貼っておきます。

サービスの分類、階層構造

  • Azure / App Service / Web App: 構築手順
  • Azure / App Service / Web App for Containers
  • Azure / App Service / その他のApp Serivice

  要するにWeb AppとWeb App for Containersは同じ階層の別サービス。

Web App

構築手順はこちら「Azure Web App + Python

  • PaaS: アプリケーションを載せる
  • OS: Windows or Linuxを選択可能
    • Windows OSを選択した場合
      • WebサーバはIIS -> web.3.4.config / web.2.7.configに設定を記述
      • ライブラリは -> requirements.txtに変更があったら自動でインストールしてくれる
      • pipでインストールできないライブラリがある(具体例と解決法
    • Linux OSを選択した場合
      • Pythonが選択できない
  • Pythonバージョン: 2.7か3.4(他も可能だが面倒)
  • CI: Githubなどと連携しておくことで可能
  • プラン: Free / Sharedプランで無料から始めることが可能
  • スケールアップ: プラン変更により簡単に可能

  Pythonは、むむむ。

App Service は、ASP.NET、Node.js、Java、PHP、Python を最高レベルでサポートしています。

Web Apps の概要 | Microsoft Docs

  他はとても使い勝手がいいがPythonとの連携周りで詰まることが多い。   ぐだぐだの思考↓

  • VMにしろEC2にしろIaaSでもWebサーバやら仮想環境やらpipやらで詰まったなぁ
  • やっぱりAnsibleやらChefやらを覚えて、VMと組み合わせるのが早いんじゃないか
  • それともDocker?何れにしても学習コストが高い
  • PaaSなら楽をできると思ったけどそんなことはなかった
  • 結局デプロイでは永遠に苦しみ続けるのか
  • もはや全てJSに任せればサーバ環境で苦しまなくて済むのでは?

Web App for Containers

  こちらに構築手順をまとめました。 http://roy29fuku.com/infra/azure/web-app-for-containers/

  • PaaS: Docker形式のコンテナイメージを載せる
  • OS: Linux
  • コンテナイメージ: 自作のもの、もしくはDockerHubのものが利用可能
    • MicrosoftからDockerファイルとDockerコンテナが公開されている
  • CI: DockerHubと連携することで可能
    • ただしWebhookの設定をするのでWeb Appに比べると初期設定が面倒(詳細
  • プラン: Free / Sharedプランが使えないので無料から始めることが不可能
  • Web Appと比較して一部制限事項あり(詳細