Azure Portal で初めての関数を作成するCreate your first function in the Azure portal

Azure Functions を使用すると、最初に仮想マシン (VM) を作成したり、Web アプリケーションを発行したりしなくても、サーバーレス環境でコードを実行できます。Azure Functions lets you run your code in a serverless environment without having to first create a virtual machine (VM) or publish a web application. この記事では、Azure Functions を使用して Azure portal で "hello world" の HTTP トリガー関数を作成する方法について説明します。In this article, you learn how to use Azure Functions to create a "hello world" HTTP trigger function in the Azure portal.

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。If you don't have an Azure subscription, create a free account before you begin.

C# の開発者は、ポータルではなく、Visual Studio 2019 で最初の関数を作成することを検討してください。If you're a C# developer, consider creating your first function in Visual Studio 2019 instead of in the portal.

Azure へのサインインSign in to Azure

Azure アカウントで Azure Portal にサインインします。Sign in to the Azure portal with your Azure account.

Function App を作成するCreate a function app

関数の実行をホストするための Function App が存在する必要があります。You must have a function app to host the execution of your functions. 関数アプリを使用すると、リソースの管理、デプロイ、スケーリング、および共有を容易にするための論理ユニットとして関数をグループ化できます。A function app lets you group functions as a logical unit for easier management, deployment, scaling, and sharing of resources.

  1. Azure portal メニューまたは [ホーム] ページで、 [リソースの作成] を選択します。From the Azure portal menu or the Home page, select Create a resource.

  2. [新規] ページで、 [計算] 、 > [関数アプリ] の順に選択します。In the New page, select Compute > Function App.

  3. [基本] ページで、下の表で指定されている関数アプリの設定を使用します。On the Basics page, use the function app settings as specified in the following table.

    設定Setting 推奨値Suggested value 説明Description
    サブスクリプションSubscription 該当するサブスクリプションYour subscription この新しい Function App が作成されるサブスクリプション。The subscription under which this new function app is created.
    リソース グループResource Group myResourceGroupmyResourceGroup Function App を作成するための新しいリソース グループの名前。Name for the new resource group in which to create your function app.
    関数アプリ名Function App name グローバルに一意の名前Globally unique name 新しい Function App を識別する名前。Name that identifies your new function app. 有効な文字は、a-z (大文字と小文字の区別をしない)、0-9、および -です。Valid characters are a-z (case insensitive), 0-9, and -.
    発行Publish コードCode コード ファイルまたは Docker コンテナーの発行オプション。Option to publish code files or a Docker container.
    ランタイム スタックRuntime stack 優先言語Preferred language お気に入りの関数プログラミング言語をサポートするランタイムを選択します。Choose a runtime that supports your favorite function programming language. C# 関数および F# 関数の場合は、 [.NET Core] を選択します。Choose .NET Core for C# and F# functions.
    VersionVersion バージョン番号Version number インストールされているランタイムのバージョンを選択します。Choose the version of your installed runtime.
    リージョンRegion 優先リージョンPreferred region ユーザーに近いリージョン、または関数がアクセスする他のサービスの近くのリージョンを選択します。Choose a region near you or near other services your functions access.

    基本

  4. [次へ :ホスティング] を選択します。Select Next : Hosting. [ホスティング] ページで、次の設定を入力します。On the Hosting page, enter the following settings.

    設定Setting 推奨値Suggested value 説明Description
    ストレージ アカウントStorage account グローバルに一意の名前Globally unique name Function App で使用されるストレージ アカウントを作成します。Create a storage account used by your function app. ストレージ アカウント名は、3 文字から 24 文字までの長さにし、数字と小文字のみを使用する必要があります。Storage account names must be between 3 and 24 characters in length and can contain numbers and lowercase letters only. 既存のアカウントを使用することもできますが、ストレージ アカウントの要件を満たしている必要があります。You can also use an existing account, which must meet the storage account requirements.
    オペレーティング システムOperating system 優先オペレーティング システムPreferred operating system オペレーティング システムは、ランタイム スタックの選択に基づいてあらかじめ選択されますが、必要に応じて設定を変更できます。An operating system is pre-selected for you based on your runtime stack selection, but you can change the setting if necessary.
    プランPlan 従量課金プラン (サーバーレス)Consumption (Serverless) Function App にどのようにリソースが割り当てられるかを定義するホスティング プラン。Hosting plan that defines how resources are allocated to your function app. 既定の [従量課金プラン] では、リソースは関数の必要に応じて動的に追加されます。In the default Consumption plan, resources are added dynamically as required by your functions. このサーバーレスのホスティングでは、関数が実行された時間にのみ課金されます。In this serverless hosting, you pay only for the time your functions run. App Service プランで実行する場合は、関数アプリのスケーリングを管理する必要があります。When you run in an App Service plan, you must manage the scaling of your function app.

    Hosting

  5. [次へ :監視] を選択します。Select Next : Monitoring. [監視] ページで、次の設定を入力します。On the Monitoring page, enter the following settings.

    設定Setting 推奨値Suggested value 説明Description
    Application InsightsApplication Insights DefaultDefault 最も近いサポートされているリージョン内に同じアプリ名の Application Insights リソースを作成します。Creates an Application Insights resource of the same App name in the nearest supported region. この設定を展開するか、 [新規作成] を選択することによって、Application Insights 名を変更するか、データを格納する Azure 地域内の別のリージョンを選択することができます。By expanding this setting or selecting Create new, you can change the Application Insights name or choose a different region in an Azure geography where you want to store your data.

    監視

  6. [確認および作成] を選択して、アプリ構成の選択内容を確認します。Select Review + create to review the app configuration selections.

  7. [確認および作成] ページで設定を確認して、 [作成] を選択し、関数アプリをプロビジョニングしてデプロイします。On the Review + create page, review your settings, and then select Create to provision and deploy the function app.

  8. ポータルの右上隅の [通知] アイコンを選択し、"デプロイメントに成功しました" というメッセージが表示されるまで待ちます。Select the Notifications icon in the upper-right corner of the portal and watch for the Deployment succeeded message.

  9. [リソースに移動] を選択して、新しい Function App を確認します。Select Go to resource to view your new function app. また、 [ダッシュボードにピン留めする] を選択することもできます。You can also select Pin to dashboard. ピン留めすると、ダッシュボードからこの関数アプリ リソースに戻るのが容易になります。Pinning makes it easier to return to this function app resource from your dashboard.

    デプロイの通知

次に、新しい関数アプリで関数を作成します。Next, create a function in the new function app.

HTTP トリガー関数の作成Create an HTTP trigger function

  1. [関数] ウィンドウの左側のメニューで、 [関数] を選択し、上部のメニューから [追加] を選択します。From the left menu of the Functions window, select Functions, then select Add from the top menu.

  2. [新規関数] ウィンドウで [Http トリガー] を選択します。From the New Function window, select Http trigger.

    HTTP トリガー関数の選択

  3. [新規関数] ウィンドウで、 [新規関数] の既定の名前を受け入れるか、新しい名前を入力します。In the New Function window, accept the default name for New Function, or enter a new name.

  4. [承認レベル] ドロップダウン リストから [匿名] を選択し、 [関数の作成] を選択します。Choose Anonymous from the Authorization level drop-down list, and then select Create Function.

    Azure によって HTTP トリガー関数が作成されます。Azure creates the HTTP trigger function. ここで、HTTP 要求を送信することで、新しい関数を実行できます。Now, you can run the new function by sending an HTTP request.

関数をテストするTest the function

  1. 新しい HTTP トリガー関数で、左側のメニューから [Code + Test](コード + テスト) を選択し、上部のメニューから [関数の URL の取得] を選択します。In your new HTTP trigger function, select Code + Test from the left menu, then select Get function URL from the top menu.

    [関数の URL の取得] の選択

  2. [関数の URL の取得] ダイアログ ボックスで、ドロップダウン リストから [既定] を選択し、 [クリップボードにコピー] アイコンを選択します。In the Get function URL dialog box, select default from the drop-down list, and then select the Copy to clipboard icon.

    Azure Portal からの関数 URL のコピー

  3. 関数 URL をブラウザーのアドレス バーに貼り付けます。Paste the function URL into your browser's address bar. この URL の末尾にクエリ文字列の値 ?name=<your_name> を追加し、Enter キーを押して要求を実行します。Add the query string value ?name=<your_name> to the end of this URL and press Enter to run the request.

    次の例は、ブラウザーでの応答を示しています。The following example shows the response in the browser:

    ブラウザーでの関数の応答。

    要求 URL には、既定では HTTP 経由で関数にアクセスするために必要なキーが含まれています。The request URL includes a key that is required, by default, to access your function over HTTP.

  4. 関数が実行されると、ログにトレース情報が書き込まれます。When your function runs, trace information is written to the logs. トレース出力を表示するには、ポータルの [Code + Test](コード + テスト) ページに戻り、ページの下部にある [ログ] 矢印を展開します。To see the trace output, return to the Code + Test page in the portal and expand the Logs arrow at the bottom of the page.

    Azure Portal の関数ログ ビューアー。

リソースをクリーンアップするClean up resources

このコレクションの他のクイックスタートは、このクイックスタートに基づいています。Other quickstarts in this collection build upon this quickstart. クイック スタート、チュートリアル、またはこのクイック スタートで作成したサービスのいずれかでの作業を引き続き行う場合は、リソースをクリーンアップしないでください。If you plan to work with subsequent quickstarts, tutorials, or with any of the services you have created in this quickstart, do not clean up the resources.

Azure の "リソース" とは、関数アプリ、関数、ストレージ アカウントなどのことを指します。Resources in Azure refer to function apps, functions, storage accounts, and so forth. これらは "リソース グループ" に分類されており、グループを削除することでグループ内のすべてのものを削除できます。They're grouped into resource groups, and you can delete everything in a group by deleting the group.

これらのクイックスタートを完了するためにリソースを作成しました。You created resources to complete these quickstarts. これらのリソースには、アカウントの状態サービスの価格に応じて課金される場合があります。You may be billed for these resources, depending on your account status and service pricing. リソースの必要がなくなった場合にそれらを削除する方法を、次に示します。If you don't need the resources anymore, here's how to delete them:

  1. Azure Portal で、 [リソース グループ] ページに移動します。In the Azure portal, go to the Resource group page.

    Function App ページからこのページに移動するには、 [概要] タブを選択してから、 [リソース グループ] の下にあるリンクを選択します。To get to that page from the function app page, select the Overview tab and then select the link under Resource group.

    Function App ページから削除するリソース グループを選択します。

    ダッシュボードからこのページに移動するには、 [リソース グループ] を選択してから、このクイックスタート用に使用したリソース グループを選択します。To get to that page from the dashboard, select Resource groups, and then select the resource group that you used for this quickstart.

  2. [リソース グループ] ページで、含まれているリソースの一覧を確認し、削除するものであることを確認します。In the Resource group page, review the list of included resources, and verify that they're the ones you want to delete.

  3. [リソース グループの削除] を選択し、指示に従います。Select Delete resource group, and follow the instructions.

    削除には数分かかることがあります。Deletion may take a couple of minutes. 実行されると、通知が数秒間表示されます。When it's done, a notification appears for a few seconds. ページの上部にあるベルのアイコンを選択して、通知を表示することもできます。You can also select the bell icon at the top of the page to view the notification.

次のステップNext steps

最初の関数を作成した後は、メッセージを Storage キューに書き込む出力バインディングをこの関数に追加しましょう。Now that you've created your first function, let's add an output binding to the function that writes a message to a Storage queue.