フィードバックを送信
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
クイックスタート: Compute Engine VM インスタンスから Cloud SQL for PostgreSQL に接続する
Compute Engine から Cloud SQL for PostgreSQL に接続する
Google Cloud コンソールとクライアント アプリケーションを使用して、PostgreSQL インスタンスに接続している Linux または Windows ベースの Compute Engine VM インスタンスにサンプルアプリをデプロイする方法を学習します。
すべてのステップを適切なタイミングで完了した場合、通常、このクイックスタートで作成されるリソースにかかる費用は 1 ドル(USD)未満です。
始める前に
注: プロジェクトに使用する名前は 4~30 文字にする必要があります。名前を入力すると、フォームにプロジェクト ID の候補が示されます。これは編集できます。プロジェクト ID は 6~30 文字で、先頭を小文字にします。残りの文字には、ダッシュ、小文字、数字を使用できますが、最後の文字にダッシュは使えません。
Sign in to your Google Cloud account. If you're new to
Google Cloud,
create an account to evaluate how our products perform in
real-world scenarios. New customers also get $300 in free credits to
run, test, and deploy workloads.
In the Google Cloud console, on the project selector page,
select or create a Google Cloud project.
Note : If you don't plan to keep the
resources that you create in this procedure, create a project instead of
selecting an existing project. After you finish these steps, you can
delete the project, removing all resources associated with the project.
Go to project selector
Make sure that billing is enabled for your Google Cloud project .
In the Google Cloud console, on the project selector page,
select or create a Google Cloud project.
Note : If you don't plan to keep the
resources that you create in this procedure, create a project instead of
selecting an existing project. After you finish these steps, you can
delete the project, removing all resources associated with the project.
Go to project selector
Make sure that billing is enabled for your Google Cloud project .
Compute Engine VM インスタンスで Cloud SQL サンプルアプリを実行するために必要な Cloud APIs を有効にします。
コンソール
[API を有効にする ] ボタンをクリックして、このクイックスタートで必要な API を有効にします。
API を有効にする
これにより、次の API が有効になります。
gcloud
gcloud CLI をインストールします。これにより、コマンドラインから Google Cloud リソースにアクセスできます。 gcloud CLI を使用して、このクイックスタートで紹介する gcloud CLI
コマンドを実行します。すべてのコマンドは、ターミナルまたは Powershell ウィンドウで実行するようにフォーマットされています。
次の gcloud
コマンドを実行します。
gcloud services enable sqladmin.googleapis.com
このコマンドにより、次の API が有効になります。
Cloud SQL の設定
Cloud SQL インスタンスを作成する
パブリック IP
コンソール
パブリック IP アドレスを持つインスタンスを作成する
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
[インスタンスを作成 ] をクリックします。
[PostgreSQL ] をクリックします。
[インスタンス ID ] フィールドに「quickstart-instance
」と入力します。
[パスワード ] フィールドに、postgres ユーザーのパスワードを入力します。このパスワードは後で使用できるように保存してください。
[リージョンとゾーンの可用性の選択 ] セクションで、[シングルゾーン ] を選択します。
[構成オプションを表示 ] セクションを開きます。
[マシンタイプ ] プルダウン リストで [カスタム ] を選択します。
[インスタンスを作成 ] をクリックし、インスタンスが初期化されて起動するまで待ちます。
gcloud
パブリック IP アドレスを持つインスタンスを作成する
gcloud sql instances create
コマンドを実行する前に、DB_ROOT_PASSWORD をデータベース ユーザーのパスワードに置き換えます。
必要に応じて、次のパラメータの値を変更します。
--database_version : データベース エンジンのタイプとバージョン。指定しない場合は、API のデフォルトが使用されます。現在利用可能なバージョンを確認するには、gcloud database versions ドキュメントをご覧ください。
--cpu : マシンに必要なコア数。
--memory : マシンに必要なメモリ量を示す整数。サイズ単位を指定する必要があります(例: 3,072 MB、9 GB)。単位を指定しない場合、GB が使用されます。
--region : インスタンスのリージョンのロケーション(asia-east1、us-east1 など)。指定しない場合は、デフォルトで us-central
が使用されます。リージョン の一覧をご覧ください。
gcloud
sql instances create
コマンドを実行して、Cloud SQL インスタンスを作成します。
gcloud sql instances create quickstart-instance --database-version=POSTGRES_13 --cpu=1 --memory=4GB --region=us-central --root-password=DB_ROOT_PASSWORD
プライベート IP
コンソール
Google Cloud コンソールの [VPC ネットワーク ] ページに移動します。
[VPC ネットワーク] に移動
default
VPC ネットワークを選択します。
[プライベート サービス接続 ] タブを選択します。
[サービスに割り当てられた IP 範囲 ] を選択します。
[IP 範囲の割り当て ] をクリックします。
割り振られた範囲の [名前 ] には google-managed-services-default
を指定します。
IP 範囲の [自動 ] オプションを選択し、接頭辞の長さを 16
として指定します。
[割り当て ] をクリックして、割り振る範囲を作成します。
default
VPC ネットワークの [サービスへのプライベート接続 ] タブを選択します。
ネットワークとサービス プロデューサーとの間にプライベート接続を作成するには、[接続の作成 ] をクリックします。
[割り当て ] で [google-managed-services-default
] を選択します。
[接続 ] をクリックして接続を作成します。
プライベート IP アドレスと SSL を有効にしてインスタンスを作成する
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
[インスタンスを作成 ] をクリックします。
[PostgreSQL ] をクリックします。
[インスタンス ID ] に「quickstart-instance
」と入力します。
postgres ユーザーのパスワードを入力します。このパスワードはこの後で使用できるように保存してください。
[リージョンとゾーンの可用性の選択 ] で [シングルゾーン ] オプションをクリックします。
[構成オプションを表示 ] をクリックして開きます。
[マシンタイプ ] で [軽量 ] を選択します。
[接続 ] で、[プライベート IP ] を選択します。
[ネットワーク ] プルダウン メニューから [デフォルト ] を選択します。
プライベート IP のみを使用するインスタンスを作成するには、[パブリック IP ] チェックボックスをオフにします。
[インスタンスを作成 ] をクリックし、インスタンスが初期化されて起動するまで待ちます。
[接続 ] をクリックします。
[セキュリティ ] で [SSL 接続のみ許可 ] を選択し、SSL 接続を有効にします。
[SSL 接続のみ許可 ] ダイアログで [保存 ] をクリックし、インスタンスが再起動するのを待ちます。
gcloud
gcloud compute addresses create
コマンドを実行して、IP アドレス範囲を割り振ります。
gcloud compute addresses create google-managed-services-default --global --purpose=VPC_PEERING --prefix-length=16 --description="peering range for Google" --network=default
gcloud services vpc-peerings connect
コマンドを実行して、割り振られた IP アドレス範囲へのプライベート接続を作成します。YOUR_PROJECT_ID は、プロジェクトのプロジェクト ID に置き換えます。
gcloud services vpc-peerings connect --service=servicenetworking.googleapis.com --ranges=google-managed-services-default --network=default --project=YOUR_PROJECT_ID
プライベート IP アドレスと SSL を有効にしてインスタンスを作成する
次のコマンドを実行する前に、DB_ROOT_PASSWORD をデータベース ユーザーのパスワードに置き換えます。
必要に応じて、次のパラメータの値を変更します。
--database_version : データベース エンジンのタイプとバージョン。指定しない場合は、API のデフォルトが使用されます。現在利用可能なバージョンを確認するには、gcloud database versions ドキュメントをご覧ください。
--cpu : マシン内のコア数。
--memory : マシンに搭載するメモリ量を示す整数。サイズの単位を指定できます(例: 3,072 MB、9 GB)。単位を指定しない場合、GB が使用されます。
--region : インスタンスのリージョンのロケーション(asia-east1、us-east1 など)。指定しない場合は、デフォルトで us-central1
が使用されます。リージョン の一覧をご覧ください。
gcloud
sql instances create
コマンドを実行して、プライベート IP アドレスを持つ Cloud SQL インスタンスを作成します。
gcloud beta sql instances create quickstart-instance --database-version=POSTGRES_13 --cpu=1 --memory=4GB --region=us-central --root-password=DB_ROOT_PASSWORD --no-assign-ip --network=default
gcloud sql instances patch
コマンドを実行して、インスタンスで SSL 接続のみ許可 します。
gcloud sql instances patch quickstart-instance --require-ssl
データベースの作成
コンソール
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
[quickstart-instance
] を選択します。
[データベース ] タブを開きます。
[データベースを作成 ] をクリックします。
[新しいデータベース ] ダイアログ ボックスで、データベースの名前として「quickstart_db
」と入力します。
[作成 ] をクリックします。
ユーザーを作成する
コンソール
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
インスタンスの [概要 ] ページを開くには、インスタンス名をクリックします。
SQL ナビゲーション メニューから [ユーザー ] を選択します。
[ユーザー アカウントを追加 ] をクリックします。 [ユーザー アカウントをインスタンス instance_name に追加 ] ページで、次の情報を追加します。
[ユーザー名 ] フィールドに「quickstart-user
」と入力します。
[パスワード ] フィールドに、データベース ユーザーのパスワードを指定します。このクイックスタートの後半で使用するので、メモしておいてください。
[追加 ] をクリックします。
gcloud
次のコマンドを実行する前に、次のように置き換えます。
PASSWORD はデータベース ユーザーのパスワードに置き換えます。このクイックスタートの後半で使用するので、メモしておいてください。
gcloud sql users create
コマンドを実行してリソースを作成します。
gcloud sql users create quickstart-user --instance=quickstart-instance --password=PASSWORD
ユーザー名の長さの上限は、オンプレミス PostgreSQL の場合と同じです。
Cloud SQL に接続できる
Cloud SQL クライアント のロールを持つ Google Cloud サービス アカウントを作成して構成します。サービス アカウントの作成後、サービス アカウントが使用できるようになるまでに 60 秒以上かかる場合があります。
コンソール
サービス アカウントを作成する
Google Cloud コンソールで [サービス アカウントの作成 ] ページに移動します。
[サービス アカウントの作成] に移動
Google Cloud プロジェクトを選択します。
サービス アカウント名として quickstart-service-account
を入力します。
(省略可)サービス アカウントの説明を入力します。
[作成して続行 ] をクリックして、次の手順に進みます。
プロジェクトのサービス アカウントに付与する Cloud SQL クライアント のロールを選択します。
[別のロールを追加 ] をクリックして、プロジェクトのサービス アカウントに付与するストレージ オブジェクト閲覧者 のロールを選択します。
[続行 ] をクリックします。
[完了 ] をクリックして、サービス アカウントの作成を完了します。
gcloud
サービス アカウントを作成する
サービス アカウントを作成するには、gcloud iam service-accounts create
コマンドを実行します。
gcloud iam service-accounts create quickstart-service-account --description="DESCRIPTION " --display-name="quickstart-service-account "
次の値を置き換えます。
DESCRIPTION
: サービスの説明(省略可)
サービス アカウントにプロジェクトの Cloud SQL クライアント のロールとストレージ オブジェクト閲覧者 のロールを付与するには、gcloud projects add-iam-policy-binding
コマンドを実行します。PROJECT_ID は、実際の Google Cloud プロジェクト ID に置き換えます。gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:quickstart-service-account@PROJECT_ID .iam.gserviceaccount.com" --role="roles/cloudsql.client" --role="roles/storage.objectViewer"
Compute Engine VM インスタンスを作成する
Cloud SQL に接続するサンプル ウェブアプリをホストする Compute Engine VM インスタンスを作成します。
Linux VM インスタンスを作成する
コンソール
Google Cloud コンソールで、[VM インスタンス ] ページに移動します。
[VM インスタンス] に移動
[インスタンスを作成 ] ボタンをクリックします。
VM インスタンス名として [名前 ] に「quickstart-vm-instance
」と入力します。
[サービス アカウント ] で quickstart-service-account
を選択します。
[ファイアウォール ] で、[HTTP トラフィックを許可する ] オプションを選択します。
[作成 ] をクリックして VM インスタンスを作成します。
gcloud
次のコマンドを実行する前に、YOUR_PROJECT_ID をプロジェクト ID に置き換えます。
次の gcloud compute instances create
コマンドを実行します。
gcloud compute instances create quickstart-vm-instance --image-family=debian-10 --image-project=debian-cloud --machine-type=e2-medium --service-account=quickstart-service-account@YOUR_PROJECT_ID .iam.gserviceaccount.com --scopes=https://www.googleapis.com/auth/cloud-platform --tags=http-server --zone=us-central1-a
Windows VM インスタンスを作成する
コンソール
Google Cloud コンソールで、[VM インスタンス ] ページに移動します。
[VM インスタンス] に移動
[インスタンスを作成 ] ボタンをクリックします。
VM インスタンス名として [名前 ] に「quickstart-vm-instance
」と入力します。
[ブートディスク ] で [変更 ] ボタンをクリックします。
[OS ] で [Windows Server ] を選択します。
[バージョン ] で [Windows Server 2022 Datacenter ] を選択します。
[選択 ] ボタンをクリックします。
[サービス アカウント ] で quickstart-service-account
を選択します。
[ファイアウォール ] で、[HTTP トラフィックを許可する ] オプションを選択します。
[作成 ] をクリックして VM インスタンスを作成します。
2~3 分後に VM インスタンスが起動したら、VM インスタンスの詳細ページで [Windows パスワードを設定 ] ボタンをクリックします。
このクイックスタートの次のステップで VM インスタンスにアクセスする際に使用するため、このパスワードを安全な場所にコピーして保存します。
gcloud
次のコマンドを実行する前に、YOUR_PROJECT_ID をプロジェクト ID に置き換えます。
ターミナル ウィンドウで、次の gcloud compute instances create
コマンドを実行します。
gcloud compute instances create quickstart-vm-instance --image-project=windows-cloud --image-family=windows-2022 --machine-type=e2-medium --service-account=quickstart-service-account@YOUR_PROJECT_ID .iam.gserviceaccount.com --scopes=https://www.googleapis.com/auth/cloud-platform --tags=http-server --zone=us-central1-a
2~3 分後に VM インスタンスが起動したら、次のコマンドを実行して VM インスタンスに Windows パスワードを設定します。
gcloud compute reset-windows-password quickstart-vm-instance
このクイックスタートの次のステップで VM インスタンスにアクセスする際に使用するため、このパスワードを安全な場所にコピーして保存します。
Compute Engine VM インスタンスにアクセスする
Linux VM インスタンスにアクセスする
コンソール
Google Cloud コンソールで、[VM インスタンス ] ページに移動します。[VM インスタンス] に移動
仮想マシン インスタンスのリストで、接続するインスタンスの行にある [SSH ] をクリックします。
注: Google Cloud コンソールから VM に接続すると、Compute Engine によって一時的な SSH 認証鍵が自動的に作成されます。SSH 認証鍵の詳細については、Linux VM への SSH 接続 をご覧ください。
gcloud
gcloud compute ssh
コマンドを使用して、Linux VM インスタンスに接続します。YOUR_PROJECT_ID は、実際のプロジェクト ID で置き換えます。
gcloud compute ssh --project=YOUR_PROJECT_ID --zone=us-central1-a quickstart-vm-instance
Windows VM インスタンスにアクセスする
Chrome RDP プラグイン
Chrome RDP for Google Cloud はサードパーティ製のプラグインで、Chrome ブラウザから Windows インスタンスに接続できます。このプラグインは Google Cloud コンソール と統合されています。プラグインをインストールしたら、Google Cloud コンソール で [RDP ] ボタンを使用して Windows Server インスタンスに接続します。
Chrome RDP プラグインを使用して接続するには、次の操作を行います。
Google Cloud 拡張機能用の Chrome RDP をインストールします。
Google Cloud コンソールで [VM インスタンス ] ページに移動し、接続する Windows インスタンスを見つけます。
[VM インスタンス] ページに移動
接続したいインスタンスの [RDP ] ボタンをクリックします。Chrome RDP 拡張機能が開きます。
VM インスタンスにはドメインが構成されていないため、[ドメイン ] フィールドは空白のままでかまいません。
ユーザー名とパスワードを入力し、[OK ] をクリックして接続します。
プロンプトが表示されたら、[続行 ] を押して証明書を受け入れます。
プログラミング言語の開発環境の設定
任意のプログラミング言語の Compute Engine VM インスタンスの開発環境をセットアップします。
Git をインストールする
オープンソースのバージョン管理システムである Git を Compute Engine VM インスタンスにインストールします。
Compute Engine Linux VM インスタンス
Compute Engine Linux VM インスタンスで、Linux 用 Git のインストールに関する公式ドキュメント の手順を行います。
sudo
コマンド接頭辞を使用し、管理者として推奨の Debian / Ubuntu install git
コマンドを実行します。ターミナルで実行する完全なインストール コマンドは、次の形になります。
sudo apt-get install git
サンプルアプリのクローンを作成する
git clone
コマンドを使用して、Compute Engine VM インスタンスにサンプルアプリのクローンを作成します。
クライアント権限を持つ Cloud SQL インスタンス、データベース、サービス アカウントを使用して、Compute Engine VM インスタンスで実行するサンプル アプリケーションを構成し、Cloud SQL インスタンスに接続できるようになりました。
パブリック IP Cloud SQL インスタンスと Linux ベースの Compute Engine VM
パブリック IP Cloud SQL インスタンスと Windows ベースの Compute Engine VM
プライベート IP Cloud SQL インスタンスと Linux ベースの Compute Engine VM
SSL サーバーとクライアント証明書を作成してローカル コンピュータにダウンロードする
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
quickstart-instance
をクリックして、[概要 ] ページを表示します。
[接続 ] タブをクリックします。
[セキュリティ ] で [クライアント証明書を作成 ] をクリックします。
[クライアント証明書を作成 ] ダイアログで、名前として「quickstart-key
」と入力し、[作成 ] をクリックします。
[新しい SSL 証明書を作成しました ] ダイアログで、各ダウンロード リンクをクリックして証明書をダウンロードします。[閉じる ] をクリックします。
重要: この秘密鍵は厳重に保管してください。秘密鍵を紛失した場合は、新しいクライアント証明書を作成する必要があります。
SSL 証明書を Cloud Storage バケットにアップロードする
コンソール
ローカル コンピュータのブラウザで、Cloud Storage バケットを作成し、Compute Engine VM インスタンスからアクセスできる SSL 証明書をバケットにアップロードします。
Cloud Storage バケットを作成します 。
バケットの名前 として次の名前を入力します。YOUR_PROJECT_ID は実際のプロジェクト ID で置き換えます。YOUR_PROJECT_ID -quickstart-certs
[作成 ] ボタンをクリックし、バケットを作成します。
[ファイルをアップロード ] ボタンをクリックして、新しく作成した Cloud Storage バケットにファイルをアップロードします。
ローカル コンピュータから Cloud Storage にアップロードする次のファイルを選択します。
server-ca.pem
client-cert.pem
client-key.pem
gcloud
ローカル コンピュータのターミナルまたは Powershell ウィンドウで、SSL 証明書をダウンロードしたディレクトリを開きます。これで、Cloud Storage バケットを作成し、Compute Engine VM インスタンスからアクセスできる SSL 証明書をバケットにアップロードできるようになります。gcloud CLI に付属する Cloud Storage コマンドライン ユーティリティ gsutil
を使用してファイルをアップロードします。
次の gsutil mb
コマンドを実行して、新しい Cloud Storage バケットを作成します。
gsutil mb -l us-central1 gs://YOUR_PROJECT_ID -quickstart-certs
証明書をダウンロードしたローカル コンピュータのディレクトリから、次の gsutil cp
コマンドを実行して、新しく作成した Cloud Storage バケットに SSL 証明書をコピーします。
gsutil cp server-ca.pem gs://YOUR_PROJECT_ID -quickstart-certs/
gsutil cp client-cert.pem gs://YOUR_PROJECT_ID -quickstart-certs/
gsutil cp client-key.pem gs://YOUR_PROJECT_ID -quickstart-certs/
Go
Compute Engine VM インスタンスで gsutil を使用して SSL 証明書をダウンロードする
ターミナルの Compute Engine VM インスタンスで、golang-samples/cloudsql/postgres/database-sql
ディレクトリを開いて、次の gsutil cp
コマンドを実行して SSL 証明書を Cloud Storage から certs
ディレクトリにダウンロードします。
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM インスタンスの環境変数を設定する
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、サンプルアプリの実行に必要な環境変数を初期化します。コマンドを実行する前に、次のように置き換えます。
INSTANCE_HOST は、Google Cloud コンソールの [Cloud SQL インスタンス ] ページに表示されるインスタンスのプライベート IP アドレス に設定します。
注: プライベート IP アドレスを使用した Cloud SQL インスタンスへの接続は、RFC 1918 アドレス範囲に対して自動的に認可されます。RFC 1918 以外のアドレス範囲については、プライベート IP の使用 をご覧ください。
YOUR_DB_PASSWORD は、前のユーザーの作成 クイックスタートの手順で作成した quickstart-user
のパスワードに置き換えます。
export INSTANCE_HOST='INSTANCE_HOST '
export DB_PORT='5432'
export DB_NAME='quickstart_db '
export DB_USER='quickstart-user '
export DB_PASS='YOUR_DB_PASSWORD '
export DB_ROOT_CERT='certs/server-ca.pem'
export DB_CERT='certs/client-cert.pem'
export DB_KEY='certs/client-key.pem'
export PRIVATE_IP='TRUE'
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、Compute Engine VM インスタンスへの Go サンプルアプリの依存関係を取得して、サンプルアプリを実行します。
サンプルアプリの実行に必要な依存関係を取得します。go get ./...
サンプルアプリを実行します。go run cmd/app/main.go
ローカル コンピュータで、サンプルアプリが実行されている Compute Engine VM インスタンスの外部 IP アドレスを取得し、ブラウザで表示します。
ターミナルまたはローカル コンピュータの Powershell で、次の gcloud compute instances describe
コマンドを実行して Compute Engine VM インスタンスの外部 IP アドレスを取得します。
gcloud compute instances describe quickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
実行中のサンプルアプリを表示します。ローカル コンピュータでブラウザを開き、Compute Engine VM インスタンスの外部 IP アドレス(ポート :8080)に移動します。
http://COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
サンプルアプリを停止するには、サンプルアプリを起動した Compute Engine VM インスタンスのターミナルで Ctrl+C キーを押します。
Java
Compute Engine VM インスタンスで gsutil を使用して SSL 証明書をダウンロードする
ターミナルの Compute Engine VM インスタンスで、java-docs-samples/cloud-sql/postgres/servlet
ディレクトリを開いて、次の gsutil cp
コマンドを実行して SSL 証明書を Cloud Storage から現在のディレクトリにダウンロードします。
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem .
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem .
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem .
Compute Engine VM インスタンスのターミナルで次のコマンドを実行し、openssl
を使用して、ダウンロードした PEM 証明書と鍵を PKCS12 アーカイブに変換します。次のコマンドを実行する前に、SSL_CLIENT_KEY_PASSWD を Java クライアント キーストアの作成に使用される独自のカスタム キーストア パスワードに置き換えます。
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem \
-name "postgresclient" -passout pass:SSL_CLIENT_KEY_PASSWD \
-out client-keystore.p12
Compute Engine VM インスタンスの環境変数を設定する
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、サンプルアプリの実行に必要な環境変数を初期化します。コマンドを実行する前に、次のように置き換えます。
INSTANCE_HOST は、Google Cloud コンソールの [Cloud SQL インスタンス ] ページに表示されるインスタンスのプライベート IP アドレス に設定します。
注: プライベート IP アドレスを使用した Cloud SQL インスタンスへの接続は、RFC 1918 アドレス範囲に対して自動的に認可されます。RFC 1918 以外のアドレス範囲については、プライベート IP の使用 をご覧ください。
SSL_CLIENT_KEY_PASSWD は、前のクイックスタートの手順で openssl
を使用して Java クライアント キーストアの作成に指定したパスワードに置き換えます。
YOUR_DB_PASSWORD は、前のユーザーの作成 クイックスタートの手順で作成した quickstart-user
のパスワードに置き換えます。
export INSTANCE_HOST='INSTANCE_HOST '
export DB_PORT='5432'
export DB_NAME='quickstart_db '
export DB_USER='quickstart-user '
export DB_PASS='YOUR_DB_PASSWORD '
export SSL_CLIENT_KEY_PATH='client-keystore.p12 '
export SSL_CLIENT_KEY_PASSWD='SSL_CLIENT_KEY_PASSWD '
export SSL_SERVER_CA_PATH='server-ca.pem'
export PRIVATE_IP='TRUE'
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、Compute Engine VM インスタンスへの Java サンプルアプリの依存関係を取得して、サンプルアプリを実行します。
mvn jetty:run
ローカル コンピュータで、サンプルアプリが実行されている Compute Engine VM インスタンスの外部 IP アドレスを取得し、ブラウザで表示します。
ターミナルまたはローカル コンピュータの Powershell で、次の gcloud compute instances describe
コマンドを実行して Compute Engine VM インスタンスの外部 IP アドレスを取得します。
gcloud compute instances describe quickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
実行中のサンプルアプリを表示します。ローカル コンピュータでブラウザを開き、Compute Engine VM インスタンスの外部 IP アドレス(ポート :8080)に移動します。
http://COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
サンプルアプリを停止するには、サンプルアプリを起動した Compute Engine VM インスタンスのターミナルで Ctrl+C キーを押します。
Node.js
Compute Engine VM インスタンスで gsutil を使用して SSL 証明書をダウンロードする
ターミナルの Compute Engine VM インスタンスで、nodejs-docs-samples/cloud-sql/postgres/knex
ディレクトリを開いて、次の gsutil cp
コマンドを実行して SSL 証明書を Cloud Storage から certs
ディレクトリにダウンロードします。
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM インスタンスの環境変数を設定する
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、サンプルアプリの実行に必要な環境変数を初期化します。コマンドを実行する前に、次のように置き換えます。
INSTANCE_HOST は、Google Cloud コンソールの [Cloud SQL インスタンス ] ページに表示されるインスタンスのプライベート IP アドレス に設定します。
注: プライベート IP アドレスを使用した Cloud SQL インスタンスへの接続は、RFC 1918 アドレス範囲に対して自動的に認可されます。RFC 1918 以外のアドレス範囲については、プライベート IP の使用 をご覧ください。
YOUR_DB_PASSWORD は、前のユーザーの作成 クイックスタートの手順で作成した quickstart-user
のパスワードに置き換えます。
export INSTANCE_HOST='INSTANCE_HOST '
export DB_PORT='5432'
export DB_NAME='quickstart_db '
export DB_USER='quickstart-user '
export DB_PASS='YOUR_DB_PASSWORD '
export DB_ROOT_CERT='certs/server-ca.pem'
export DB_CERT='certs/client-cert.pem'
export DB_KEY='certs/client-key.pem'
export PRIVATE_IP='TRUE'
開いているターミナルの Compute Engine VM インスタンス上で次のコマンドを実行し、必要な Node.js パッケージを Compute Engine VM インスタンスへ取り込み、サンプルアプリを実行します。
アプリをローカルで実行するために必要な Node.js パッケージをインストールします。npm install
サンプルアプリを実行します。npm start
ローカル コンピュータで、サンプルアプリが実行されている Compute Engine VM インスタンスの外部 IP アドレスを取得し、ブラウザで表示します。
ターミナルまたはローカル コンピュータの Powershell で、次の gcloud compute instances describe
コマンドを実行して Compute Engine VM インスタンスの外部 IP アドレスを取得します。
gcloud compute instances describe quickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
実行中のサンプルアプリを表示します。ローカル コンピュータでブラウザを開き、Compute Engine VM インスタンスの外部 IP アドレス(ポート :8080)に移動します。
http://COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
サンプルアプリを停止するには、サンプルアプリを起動した Compute Engine VM インスタンスのターミナルで Ctrl+C キーを押します。
Python
Compute Engine VM インスタンスで gsutil を使用して SSL 証明書をダウンロードする
ターミナルの Compute Engine VM インスタンスで、python-docs-samples/cloud-sql/postgres/sqlalchemy
ディレクトリを開いて、次の gsutil cp
コマンドを実行して SSL 証明書を Cloud Storage から certs
ディレクトリにダウンロードします。
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/.
gsutil cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM インスタンスの環境変数を設定する
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、サンプルアプリの実行に必要な環境変数を初期化します。コマンドを実行する前に、次のように置き換えます。
INSTANCE_HOST は、Google Cloud コンソールの [Cloud SQL インスタンス ] ページに表示されるインスタンスのプライベート IP アドレス に設定します。
注: プライベート IP アドレスを使用した Cloud SQL インスタンスへの接続は、RFC 1918 アドレス範囲に対して自動的に認可されます。RFC 1918 以外のアドレス範囲については、プライベート IP の使用 をご覧ください。
YOUR_DB_PASSWORD は、前のユーザーの作成 クイックスタートの手順で作成した quickstart-user
のパスワードに置き換えます。
export INSTANCE_HOST='INSTANCE_HOST '
export DB_PORT='5432'
export DB_NAME='quickstart_db '
export DB_USER='quickstart-user '
export DB_PASS='YOUR_DB_PASSWORD '
export DB_ROOT_CERT='certs/server-ca.pem'
export DB_CERT='certs/client-cert.pem'
export DB_KEY='certs/client-key.pem'
export PRIVATE_IP='TRUE'
開いているターミナルの Compute Engine VM インスタンスで次のコマンドを実行し、Compute Engine VM インスタンスへの Python サンプルアプリの要件を取得して、サンプルアプリを実行します。
仮想環境を初期化し、サンプルアプリの実行要件をインストールします。python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
サンプルアプリを実行します。python app.py
ローカル コンピュータで、次のクイックスタートの手順を実行して、SSH によるポート転送 を設定します。これにより、ローカル コンピュータのブラウザを使用して、Compute Engine VM インスタンスで実行されているアプリを表示できます。
ターミナルまたはローカル コンピュータの PowerShell で、次の gcloud compute ssh
コマンドを実行して SSH によるポート転送を設定します。コマンドを実行する前に、YOUR_PROJECT_ID はプロジェクト ID に置き換えます。
gcloud compute ssh quickstart-vm-instance --project=YOUR_PROJECT_ID --zone=us-central1-a --ssh-flag='-L 8000:127.0.0.1:8080'
実行中のサンプルアプリを表示します。ポート転送が有効な状態で、ローカル コンピュータでブラウザを開き、ブラウザのアドレスバーに「http://127.0.0.1:8000
」と入力します。
サンプルアプリを停止するには、サンプルアプリを起動した Compute Engine VM インスタンスのターミナルで Ctrl+C キーを押します。
プライベート IP Cloud SQL インスタンスと Windows ベースの Compute Engine VM
SSL サーバーとクライアント証明書を作成してローカル コンピュータにダウンロードする
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
quickstart-instance
をクリックして、[概要 ] ページを表示します。
[接続 ] タブをクリックします。
[セキュリティ ] で [クライアント証明書を作成 ] をクリックします。
[クライアント証明書を作成 ] ダイアログで、名前として「quickstart-key
」と入力し、[作成 ] をクリックします。
[新しい SSL 証明書を作成しました ] ダイアログで、各ダウンロード リンクをクリックして証明書をダウンロードします。[閉じる ] をクリックします。
重要: この秘密鍵は厳重に保管してください。秘密鍵を紛失した場合は、新しいクライアント証明書を作成する必要があります。
SSL 証明書を Cloud Storage バケットにアップロードする
コンソール
ローカル コンピュータのブラウザで、Cloud Storage バケットを作成し、Compute Engine VM インスタンスからアクセスできる SSL 証明書をバケットにアップロードします。
Cloud Storage バケットを作成します 。
バケットの名前 として次の名前を入力します。YOUR_PROJECT_ID は実際のプロジェクト ID で置き換えます。YOUR_PROJECT_ID -quickstart-certs
[作成 ] ボタンをクリックし、バケットを作成します。
[ファイルをアップロード ] ボタンをクリックして、新しく作成した Cloud Storage バケットにファイルをアップロードします。
ローカル コンピュータから Cloud Storage にアップロードする次のファイルを選択します。
server-ca.pem
client-cert.pem
client-key.pem
gcloud
ローカル コンピュータのターミナルまたは Powershell ウィンドウで、SSL 証明書をダウンロードしたディレクトリを開きます。これで、Cloud Storage バケットを作成し、Compute Engine VM インスタンスからアクセスできる SSL 証明書をバケットにアップロードできるようになります。gcloud CLI に付属する Cloud Storage コマンドライン ユーティリティ gsutil
を使用してファイルをアップロードします。
次の gsutil mb
コマンドを実行して、新しい Cloud Storage バケットを作成します。
gsutil mb -l us-central1 gs://YOUR_PROJECT_ID -quickstart-certs
証明書をダウンロードしたローカル コンピュータのディレクトリから、次の gsutil cp
コマンドを実行して、新しく作成した Cloud Storage バケットに SSL 証明書をコピーします。
gsutil cp server-ca.pem gs://YOUR_PROJECT_ID -quickstart-certs/
gsutil cp client-cert.pem gs://YOUR_PROJECT_ID -quickstart-certs/
gsutil cp client-key.pem gs://YOUR_PROJECT_ID -quickstart-certs/
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の手順を行います。
Cloud SQL インスタンスを削除する
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
Cloud SQL の [インスタンス] に移動
quickstart-instance
インスタンスを選択して [インスタンスの詳細 ] ページを開きます。
ページ上部にあるアイコンバーで、[削除 ] をクリックします。
[インスタンスの削除 ] ダイアログ ボックスで「quickstart-instance
」と入力し、[削除 ] をクリックしてインスタンスを削除します。
Compute Engine VM インスタンスを削除する
Google Cloud コンソールで、[VM インスタンス ] ページに移動します。
[VM インスタンス] に移動
quickstart-vm-instance
インスタンスを選択して [インスタンスの詳細 ] ページを開きます。
ページ上部にあるアイコンバーで、[削除 ] をクリックします。
[削除 ] をクリックしてインスタンスを削除します。
省略可能なクリーンアップ手順
Compute Engine default
サービス アカウントに割り当てた Cloud SQL クライアント のロールを使用しない場合は、削除できます。
Google Cloud コンソールの [IAM ] ページに移動します。
[IAM] に移動
Compute Engine のデフォルトのサービス アカウント という名前の IAM アカウントの編集アイコン(鉛筆の形)をクリックします。
Cloud SQL クライアント のロールを削除します。
[保存 ] をクリックします。
このクイックスタートで有効にした API を使用しない場合は、無効にすることができます。
Google Cloud Console の [API ] ページに移動します。
[API] に移動
無効にする API を選択し、[API を無効にする ] ボタンをクリックします。
フィードバックを送信
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-10-08 UTC。
ご意見をお聞かせください
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2024-10-08 UTC。"],[],[]]