0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Azure Functions】超入門クイックスタート

Last updated at Posted at 2023-09-18

はじめに

とりあえずAzure Function動かしてえ、という人向けに書きました
説明は最小限にとどめてありますが、環境構築ができるところまで書いたのでお役に立てればうれしいです

1. ローカルでの関数作成

1-1. Azure Functions Core Tools のインストール

こちらからローカル環境での開発に必要なFunctions Core Toolsをインストールしてください
image.png

インストール完了後に、ターミナルなどでfuncと入力して使い方が表示されればOKです
image.png

1-2. プロジェクト作成

先ほどインストールしたFunctions Core Toolsを使いAzure Functionのプロジェクトを作成します
任意のフォルダをVS Codeを開き、ターミナルから以下のコマンドを実行します

> func init 

矢印キーを使って使用するランタイム(今回はpython)を選択します
pythonが青色になっている状態でEnterを押します
image.png

いろいろファイルが作成されますね、とりあえず以下の認識で大丈夫です

1-3. 関数の作成

プロジェクトができたので関数を作成します、1つのプロジェクトの中で複数の関数を作ることができます。
以下のコマンドを実行します

> func new

今回はHTTPリクエストをトリガーとして実行される関数を作るのでHTTP triggerを選択します
image.png

トリガーの種類を選択したら、関数の名前を聞かれます
そのままEnterを押せばHttpTriggerという名前になります(今回はそのままEnterを押します)
image.png

HttpTriggerフォルダが作成されましたね
image.png

__init__.pyはプログラムの本体にあたります、HTTPリクエストがあったらmain関数の処理が走ります
簡単にソースコードを解説すると、nameクエリがあれば19行目、なければ21行目を返すようになっています
image.png

1-4. プログラムの実行

実はこの状態でこの関数を実行することができます
ターミナルに以下のコマンドを実行し、関数を実行します

> func start

起動したようです、表示されているURLを叩けば、関数が実行されます
image.png

1-5. 動作確認

ブラウザにURLを入力してリクエストを飛ばしてみましょう、画像のようなレスポンスが返ってくれば正常に動作しています!
nameクエリを指定しなかったので__init__.pyの22行目の文字列が返ってきています
image.png

次はnameクエリを指定してみましょう
URLの末尾に?name=YOSHIDAを追記してみます

http://localhost:7071/api/HttpTrigger?name=YOSHIDA

nameクエリを指定したので__init__.pyの19行目の文字列が返ってきました!
image.png

2. アプリをデプロイする

2-1. リソースの作成

いよいよAzureの出番です、Azureポータルにアクセスます
「関数アプリ」に移動し、「+作成」をクリックします
image.png

リソースの設定は以下の画像のようにして、リソースを作成してください
リソースグループ名・関数アプリ名はなんでもいいです

注意点

  • リソースグループは新規で作成することをお勧めます、最後にリソースグループごと削除します

  • ランタイムスタックホスティングオプションとプランは間違えないようにしてください

    • ホスティングオプションとプランをFunctions Premiumにしてしまうと、リソースが存在するだけで結構なお金がかかります、、
    • 「消費量(サーバレス)」を選択していれば、関数の実行時間によって課金されます(このクイックスタートを試す程度であればお金はかかりません)
      image.png

作成したリソースグループを見てみましょう
関数アプリを作成すると、関数アプリを運用するために必要なリソース・監視するためのリソースも同時に作成されます
image.png

2-2. ローカルで作成したアプリのデプロイ

VS CodeからAzure Funtionsの拡張機能をインストールします
image.png

インストールが完了すると、右側にAzureのアイコンが表示されます
Sign in to Azure...をクリックしサインインします
image.png

VS CodeでF1キーを入力し、deploy to function appと入力しFunctions Appにデプロイを行うコマンドを選択します
image.png

対象のフォルダを聞かれるので、デプロイしたいフォルダを選択してください
現在開いているフォルダーをデプロイしたければ(recently used)の方を選択してください
対象のサブスクリプション・関数アプリ名も聞かれるので、対象のものを選択してください
image.png

このタイミングで、プロジェクトを初期化するかか聞かれることがありますので「Yes」を選択してください
image.png

「python」を選択してください
(初期化には少し時間がかかります)
image.png

本当にデプロイしてよいか聞かれます
対象のリソース名が間違いないか確認ができたら「Deploy」をクリックしてください
image.png

2-3. 動作確認

Azureポータルから、対象のアプリにアクセスします
「関数」タブに先ほどデプロイした関数が表示されているのでクリックしてください
image.png

この画面では、関数の実行ログの確認や関数のテストを行うことができます
image.png

「関数のURLの取得」をクリックし、URLをコピーしてください
image.png

ローカルの動作確認と同様に、ブラウザにURLを張り付けてみましょう
見覚えのあるメッセージが返ってくれば成功です!
image.png

3. リソースの削除

関数アプリを作成したリソースグループに移動します
「リソースグループの削除」からリソースを削除してください
(※リソースを残しておくと、少額ですが課金されてしまいますので削除をお勧めします)
image.png

参考

0
1
1

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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?