Cloud Run から Cloud SQL for SQL Server に接続する

Google Cloud コンソールとクライアント アプリケーションを使用して、SQL Server インスタンスに接続された Cloud Run にサンプルアプリをデプロイする方法を学習します。

すべてのステップを適切なタイミングで完了した場合、通常、このクイックスタートで作成されるリソースにかかる費用は 1 ドル(USD)未満です。

始める前に

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  5. Google Cloud プロジェクトで課金が有効になっていることを確認します

  6. Cloud Run で Cloud SQL サンプルアプリを実行するために必要な Cloud APIs を有効にします。

    コンソール

    [API を有効にする] をクリックして、このクイックスタートで必要な API を有効にします。

    API を有効にする

    これにより、次の API が有効になります。

    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
    • Service Networking API

    gcloud

    次のボタンをクリックして Cloud Shell を開きます。これにより、ブラウザから Google Cloud リソースにコマンドラインで直接アクセスできます。Cloud Shell を使用して、このクイックスタートで紹介する gcloud コマンドを実行できます。

    Cloud Shell を開く

    Cloud Shell を使用して次の gcloud コマンドを実行します。

    gcloud services enable compute.googleapis.com sqladmin.googleapis.com run.googleapis.com \
    containerregistry.googleapis.com cloudbuild.googleapis.com servicenetworking.googleapis.com

    このコマンドにより、次の API が有効になります。

    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
    • Service Networking API

Cloud SQL の設定

Cloud SQL インスタンスを作成する

データベースの作成

コンソール

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. [quickstart-instance] を選択します。
  3. SQL ナビゲーション メニューから [データベース] を選択します。
  4. [データベースを作成] をクリックします。
    1. [新しいデータベース] ダイアログ ボックスの [データベース名] フィールドに「quickstart-db」と入力します。
    2. [作成] をクリックします。

gcloud

gcloud sql databases create コマンドを実行してデータベースを作成します。

gcloud sql databases create quickstart-db --instance=quickstart-instance

サンプルアプリを Cloud Run にデプロイする

Cloud Run サービス アカウントを構成する

Cloud Run で使用するサービス アカウントが、Cloud SQL に接続する権限を持つ Cloud SQL Client ロールを持つように構成します。

コンソール

  1. Google Cloud コンソールの [IAM] ページに移動します。

    [IAM] に移動

  2. Compute Engine のデフォルトのサービス アカウントという名前のサービス アカウントの鉛筆アイコンをクリックします。
  3. [別のロールを追加] をクリックします。
  4. Cloud SQL クライアントという名前のロールを追加します。
  5. [保存] をクリックします。

gcloud

  1. 次の gcloud コマンドを実行して、プロジェクトのサービス アカウントのリストを取得します。
    gcloud iam service-accounts list
  2. Compute Engine サービス アカウントメールアドレスをコピーします。
  3. 次のコマンドを実行して、Cloud SQL クライアントのロールを Compute Engine サービス アカウントに追加します。
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

Cloud SQL サンプルアプリを構成する

Cloud SQL インスタンス、データベース、クライアント権限を持つサービス アカウントを使用して、Cloud SQL インスタンスに接続するようにサンプル アプリケーションを構成できるようになりました。

サンプルアプリをデプロイする

サンプルを Cloud Run にデプロイする手順は、Cloud SQL インスタンスに割り当てられた IP アドレスの種類によって異なります。

クリーンアップ

このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. quickstart-instance インスタンスを選択して [インスタンスの詳細] ページを開きます。
  3. ページ上部にあるアイコンバーで、[削除] をクリックします。
  4. [インスタンスの削除] ダイアログ ボックスで「quickstart-instance」と入力し、[削除] をクリックしてインスタンスを削除します。
  5. Google Cloud コンソールで [Cloud Run] ページに移動します。

    [Cloud Run] に移動

  6. quickstart-service サービス名の横にあるチェックボックスをオンにします。
  7. [Cloud Run] ページの上部にある [削除] をクリックします。

省略可能なクリーンアップ手順

Compute Engine サービス アカウントに割り当てた Cloud SQL クライアントのロールを使用しない場合は、削除できます。

  1. Google Cloud Console の [IAM] ページに移動します。

    [IAM] に移動

  2. Compute Engine のデフォルトのサービス アカウントという名前の IAM アカウントの編集アイコン(鉛筆の形)をクリックします。
  3. Cloud SQL クライアントのロールを削除します。
  4. [保存] をクリックします。

このクイックスタートで有効にした API を使用しない場合は、無効にすることができます。

  • このクイックスタートで有効にした API:
    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
  1. Google Cloud Console の [API] ページに移動します。

    [API] に移動

  2. 無効にする API を選択し、[API を無効にする] ボタンをクリックします。

次のステップ

必要に応じて、Cloud SQL インスタンスの作成で詳細をご確認ください。

Cloud SQL インスタンスの SQL Server ユーザーデータベースの作成についても確認できます。

料金の詳細については、Cloud SQL for SQL Server の料金をご覧ください。

以下の詳細を確認してください。

また、他の Google Cloud アプリケーションから Cloud SQL インスタンスへの接続についても確認できます。