Azure Functionsは難しくない!環境構築の「詰み」を解消する
@WinAutoMeister(ウィンオートマイスター)と申します。
このブログは初めてクラウド案件に携わることになったものの、環境構築の複雑さに不安を感じているエンジニアの皆さんを対象とした記事です。
使い慣れたWindows PCとVSCodeだけを使い、Dockerや特別なフレームワークなしでAzure Functionsの開発からデプロイまでを達成する最小手順を解説しています。
1. はじめに
ついにクラウド案件が舞い込んできたもののクラウド導入の難しさという心理的なハードルにぶつかっていませんか?
Azure Functionsは難しそうなDockerや特別なフレームワークは不要です。この記事ではWindows PCとVSCodeだけでAzure Functionsの開発環境を構築、デフォルトアプリケーションをデプロイするまでの最小手順を解説しています。
複雑な設定で「詰み」を経験することなく、モダンな開発ってこんなに楽なんだ!という感覚を掴んでいただければ幸いです。
2.VSCodeで開発の準備
現場エンジニアにとって最も重要なツールであるVSCodeの設定を正確に行い、開発環境を整えましょう。
📌 前提条件
- Python (推奨は3.9以降)とVSCodeがWindows PCにインストール済み
- Azureアカウントを事前に公式サイトで作成済み
ステップ1:必要な拡張機能をインストールする
次の2つの拡張機能をVSCodeにインストールしましょう。
-
Azure Tools 拡張機能: 開発したAzure Functionsのデプロイや管理に必須です
-
Python 拡張機能: Pythonインタープリタの選択やデバッグが簡単になります
ステップ2:作業用フォルダと仮想環境の準備
プロジェクトを格納するフォルダ(例:C:\projects\my_function_app
)を作成してください。
次にこのフォルダ内でPythonの仮想環境(venv)を有効化してインタープリタとして選択します。VSCodeのステータスバーでインタープリタが正しく選択されていることを確認してください。
ヒント: 仮想環境(venv)の具体的な作成方法については、前回の記事「最強の venv 術」をご参照ください。ライブラリ競合の心配がない、きれいな環境を準備できます。
VSCodeステータスバー
3. Azure Functions Core Toolsをインストールする
Azure Functionsをローカルでデバッグ実行するためにAzure Functions Core Tools をインストールします。
インストール方法はOS毎に異なりますがWindowsでは公式サイト - learn.microsoft.comからダウンロードしたインストーラ(MSI)を使用します。
インストールが完了したら次のコマンドを実行し、ツールが導入されていることとバージョン情報が表示されることを確認してください。
func --version
実行結果
4. デフォルトアプリをローカルで動かす手順
VSCodeの機能を使って実際にプロジェクトを立ち上げからデバッグ実行までを行います。
ステップ1:Functionsプロジェクトを作成する
- VSCodeのアクティビティバーからAzureアイコンをクリック
- 「新しいプロジェクトの作成」を選択し、ウィザードに従ってプロジェクトに必要なパラメータを入力
ウィザードの質問と回答例
質問 | 入力値 |
---|---|
select the folder that will contain your function project |
作成した作業用フォルダ(例:C:\projects\my_function_app ) |
Select a language |
Python |
Select a template for your projects first function |
HTTP trigger |
Name of the function you want to create (Press 'Enter' to confirm or 'Escape' to cancel) |
http_trigger |
Authorization level controls whether the function requires an API key and which key to use |
Function |
ステップ2:デバッグ実行してブラウザで確認
プロジェクトが作成されたら、すぐにローカルでの動作確認に入ります。
- VSCodeのアクティビティバーからAzure拡張機能を選択します。
-
WORKSPACE
>Local Project
>Functions
>Start debugging to update this list...
の順に選択します - ターミナルに
Functions host started
のようなメッセージが表示されたら成功です。
ターミナルに表示されたURLをクリックしてブラウザで確認してみましょう。
ブラウザ確認 クエリなし
続いてクエリ?name=WinAutoMeister
を加えて実行してみましょう。
ブラウザ確認 クエリあり
5.Azureにデフォルトアプリを公開する
ローカルでの動作確認が完了したので、いよいよAzureへデプロイしましょう。
VSCodeから簡単にデプロイできます。
- VSCodeのアクティビティバーからAzureアイコンをクリック
- 作成したプロジェクトを右クリック、「Deploy to Azure...」を選択
- ウィザードに従ってAzure Functionsをデプロイ
ウィザードの質問と回答例
質問 | 入力値 |
---|---|
Select a function app |
ここでは「Create new function app...」を選択 |
Enter a name for the new function app |
testhttptriggerzenn |
Select a location for new resources |
Japan East |
Select a runtime stack |
Python 3.11 |
Select resource authentication type |
Secrets |
デプロイ完了画面(VSCode)
6. 【予告】残業を半分に!次は「手動ドキュメント作成の手間」を根絶しませんか?
この記事でAzure Functionsの環境構築とデプロイという最初の「詰みポイント」を乗り越えることができました。
しかし現場エンジニアとしての「手間・時間・ストレスの削減」の戦いはまだ終わっていません。
Azure Functionsを使った開発が進むと、次に必ず直面する「痛み」があります。それは手動でのドキュメント作成の手間です。
• APIの仕様が変わるたびに、ExcelやWordのドキュメントを手動で修正し、残業時間が膨らむ
• ドキュメントと実際のコードにズレが生じ、テスターや他のエンジニアから顧客経由で指摘を受ける
現場エンジニアによるドキュメント修正のストレスを完全に排除するため【PythonのモダンなフレームワークFastAPIとPydantic BaseModelを活用したドキュメント自動生成による時短術】を準備中です。
BaseModelでドキュメントが自動生成される驚きと時短効果をぜひ体験してください。
Discussion