クイックスタートガイド: GitHub Copilot for Azure と Azure MCP Server を使用して、Azure Cache for Redis によってアプリを作成してデプロイする方法

このクイック スタートでは、次の簡単なPython アプリを作成する方法について説明します。

  • Azure Cache for Redis
  • 現在の日付と時刻を Redis に書き込みます
  • 値を読み取り戻します。
  • 結果をコンソールに出力します

GitHub Copilot を使用して、ほとんどのコードとプロビジョニング手順を生成します。

前提条件

完全なセットアップ手順については、開始方法に関する記事を参照してください。 次の項目があることを確認します。

  • Azure アカウントと、Azure サブスクリプションへのアクセス。 設定方法の詳細については、Azure アカウントのpricing ページを参照してください。

  • GitHub アカウントとGitHub Copilot サブスクリプション。 それらを設定する方法の詳細については、「 GitHub でのアカウントの作成 および GitHub Copilot の Quickstartを参照してください。

  • Visual Studio Code。 ダウンロードしてインストールする方法の詳細については、 Visual Studio Code

  • GitHub Copilot拡張機能とGitHub Copilot チャット拡張機能。 これらの拡張機能をインストールする方法については、「 VS Code でのGitHub Copilotの設定 VS Code でのGitHub Copilotチャットの概要をそれぞれ参照してください。

Important

GitHub Copilot は、GitHub によって管理される別のサブスクリプションです。 GitHub Copilot サブスクリプションとサポートに関する質問については、「 GitHub Copilot プランの概要を参照してください。

  • Azure アカウントと、Azure サブスクリプションへのアクセス。 設定方法の詳細については、Azure アカウントのpricing ページを参照してください。

  • GitHub アカウントとGitHub Copilot サブスクリプション。 それらを設定する方法の詳細については、「 GitHub でのアカウントの作成 および GitHub Copilot の Quickstartを参照してください。

  • Visual Studio 2022 (任意のエディション)。 ダウンロードしてインストールする方法の詳細については、「 Visual Studio のインストール」を参照してください。

Important

GitHub Copilot は、GitHub によって管理される別のサブスクリプションです。 GitHub Copilot サブスクリプションとサポートに関する質問については、「 GitHub Copilot プランの概要を参照してください。

  • Azure アカウントと、Azure サブスクリプションへのアクセス。 設定方法の詳細については、Azure アカウントのpricing ページを参照してください。

  • GitHub アカウントとGitHub Copilot サブスクリプション。 それらを設定する方法の詳細については、「 GitHub でのアカウントの作成 および GitHub Copilot の Quickstartを参照してください。

  • Visual Studio 2026 (任意のエディション)。 ダウンロードしてインストールする方法の詳細については、「 Visual Studio のインストール」を参照してください。

Important

GitHub Copilot は、GitHub によって管理される別のサブスクリプションです。 GitHub Copilot サブスクリプションとサポートに関する質問については、「 GitHub Copilot プランの概要を参照してください。

アプリのビルド

この記事で説明されている次の手順に従います。

  1. ワークスペースに .env ファイルを作成し、デプロイ情報Azure環境変数として格納します。
  2. サブスクリプションにAzure Cache for Redisのインスタンスを作成するように求めるメッセージを書きます。 Redis 接続情報は、 .env ファイルにも格納されます。
  3. リソースと .env ファイルが正しく作成されていることを確認します。
  4. 環境変数を使用してキャッシュから取得、書き込み、読み取りを行うPython アプリを作成するためのプロンプトを作成します。
  5. アプリが動作することを検証します。
  6. Azure内のリソースをクリーンアップします。

適切なツールが選択されていることを確認する

Azure MCP Server がインストールされ、AzureのGitHub Copilotの両方がインストールされている必要があります。

  1. チャット ウィンドウの [ツールの構成... ] アイコンを選択します。
  2. コマンド パレットに構成ツールが表示されます。 "Azure MCP" と "Azure のGitHub Copilot" の両方の最上位ノードが選択されていることを確認します。
  1. チャット ウィンドウの [ツールの選択]... アイコンを選択します。
  2. [ツールの選択 ] メニューが表示されます。 [MCP サーバーのAzure] トップ ノードが選択されていることを確認します。
  1. チャット ウィンドウで [ ツールの選択 ] アイコンを選択します。
  2. [ ツールの選択 ] メニューが表示されます。 "Azure" と "Azure MCP" の最上位ノードが両方とも選択されていることを確認します。

ローカル環境変数を作成する

一般的な開発方法は、重要なキーやその他の設定を環境変数としてワークスペース フォルダーの .env ファイルに格納することです。 これにより、プロジェクト内のすべての構成が自己完結型になります。

Important

ソース管理にシークレットを誤ってコミットしないように、 .gitignore ファイルに .env が含まれていることを確認します。

この手順では、次のようなプロンプトを使用して、ワークスペースに .env ファイルを作成します。

Create a .env file in this workspace with the following environment variables filled in:

AZURE_SUBSCRIPTION_ID
AZURE_TENANT_ID
AZURE_LOCATION
AZURE_RESOURCE_GROUP
AZURE_RESOURCE_PREFIX

Use my <your-subscription-name> subscription and I want to put everything in eastus.

<your-subscription-name> を、Azure サブスクリプションの名前に置き換えます。 Copilot はサブスクリプションとテナント ID をあなたのために見つけ、リソース グループ名とプレフィックスを生成し、.env ファイルを作成します。

ファイルが作成されたら、ファイルを開き、値が正しく表示されていることを確認します。

AZURE_SUBSCRIPTION_ID=<your-azure-subscription-id>
AZURE_TENANT_ID=<your-azure-tenant-id>
AZURE_LOCATION=eastus
AZURE_RESOURCE_GROUP=<resource-group>
AZURE_RESOURCE_PREFIX=<resource-prefix>

Azure Cache for Redisの作成

GitHub Copilot Chatを開き、次のプロンプトを貼り付けます。

You have access to Azure MCP tools.

Use the variables in the `.env` file in this workspace to create an Azure Cache for Redis instance.

Tasks:
1. Ensure the resource group exists.
2. Create Azure Cache for Redis:
    - Name: {AZURE_RESOURCE_PREFIX}-redis
    - SKU: Basic C0
    - TLS enabled (port 6380)
3. Write the following values into the `.env` file:
    REDIS_HOST
    REDIS_PORT=6380
    REDIS_PASSWORD (primary key)
    REDIS_SSL=true

Important:
- Use Azure MCP to create resources and fetch keys.

Copilot Redis リソースを作成し、ホスト名、主キー、およびその他の環境変数を含む .env ファイルを作成します。

.env ファイルに Redis 設定があることを確認する

  1. プロジェクト フォルダー内の .env ファイルを開き、値があることを確認します。

    REDIS_HOST=<your-cache-name>.redis.cache.windows.net
    REDIS_PORT=6380
    REDIS_PASSWORD=<primary-key>
    REDIS_SSL=true
    
  2. 次のプロンプトを使用して、Azure Cache for Redis インスタンスが実行されていることを確認します。

    Use the values in the `.env` file in this workspace to validate that an instance of Azure Cache for Redis is running and ready to be used.
    

Python アプリの作成を求めるメッセージ

次のプロンプトを使用して、Azure Cache for Redisの新しいインスタンスから書き込みと読み取りを行うPython アプリを作成します。

Create a minimal Python console app in this workspace.

Important:
- Do ALL work directly by editing files.
- Do NOT ask me to copy/paste code.
- Create files if they do not exist.

Goal:
Build a simple app that writes the current date/time to Azure Cache for Redis, reads it back, and prints results to the console.

Project requirements:

1. Create or update these files:

- main.py
- requirements.txt
- .gitignore

2. requirements.txt must include:
- redis
- python-dotenv

3. .gitignore must include:
- .venv/
- __pycache__/
- .env

4. main.py must:

- Load environment variables using python-dotenv
- Read:
    REDIS_HOST
    REDIS_PORT
    REDIS_PASSWORD
    REDIS_SSL
- Connect to Azure Cache for Redis using TLS (ssl=True when REDIS_SSL=true)
- Use decode_responses=True
- Test connection with PING and print:
    Connected to Redis
- Write current datetime (ISO format) to key:
    demo:timestamp
- Read the value back
- Print exactly:

    WROTE: <value>
    READ : <value>

- Wrap connection logic in a try/except and print a helpful error message.

5. Keep the code simple and beginner-friendly:
- Single file
- No classes
- About 40–60 lines

After editing the files:
- Show a summary of what you changed.
- Do NOT print the full file contents unless I ask.

Python アプリを検証する

  1. プロンプトで要求したファイルが存在することを確認します。 ファイルを視覚的に調べて、適切と思われる値があるかどうかを確認します。

  2. main.py ファイルを調べて、.env ファイルから値を取得し、redis パッケージをインポートして、Azure Cache for Redisに接続していることを確認します。 キャッシュの書き込みと読み取りを行っていることを確認します。 次のコードのようなコードが表示される場合があります。

    
    import os
    from datetime import datetime
    from dotenv import load_dotenv
    import redis
    
    # Load local environment variables
    load_dotenv()
    
    host = os.getenv("REDIS_HOST")
    port = int(os.getenv("REDIS_PORT", "6380"))
    password = os.getenv("REDIS_PASSWORD")
    ssl_enabled = os.getenv("REDIS_SSL", "true").lower() == "true"
    
    try:
        client = redis.Redis(
            host=host,
            port=port,
            password=password,
            ssl=ssl_enabled,
            decode_responses=True
        ) 
    
        # Verify connection
        client.ping()
        print("Connected to Redis")
    
        # Write current time
        now = datetime.now().isoformat()
        client.set("demo:timestamp", now)
        print(f"WROTE: {now}")
    
        # Read value back
        value = client.get("demo:timestamp")
        print(f"READ : {value}")
    
    except Exception as ex:
        print("Connection failed.")
        print(ex)
    

    Important

    AI 支援型ソフトウェア開発は決定論的ではありません。つまり、同じコードが 2 回生成されることはありません。 ただし、このような単純なアプリケーションでは、基本的なアプローチ、構文、最終結果は、まったく同じではありませんが、近いはずです。

アプリを実行する

ターミナルで、アプリを実行します。

python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python main.py

次のような出力が表示されます。

Connected to Redis
WROTE: 2026-03-01T10:22:11.452331
READ : 2026-03-01T10:22:11.452331

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

次のプロンプトを使用します。

I am finished with this instance. Please remove the Azure Cache for Redis that you created earlier by using the values in the `.env` file. ONLY remove this resource and nothing else.