Note
Cloud BuildでDockerを動かす際にCloud Buildで設定した環境変数をDockerに渡したい。
環境変数を渡すにはcloudbuild.yaml
で設定を書き換える必要がある。
※ 設定のインラインYamlでも可能。
cloudbuild.yaml
には以下のように設定がされている
steps:
- name: gcr.io/cloud-builders/docker
args:
- build
- '--no-cache'
- '-t'
- '$_GCR_HOSTNAME/$PROJECT_ID/$REPO_NAME/$_SERVICE_NAME:$COMMIT_SHA'
- .
- '-f'
- Dockerfile
id: Build
- name: gcr.io/cloud-builders/docker
args:
- ...
id: Deploy
entrypoint: gcloud
images:
- '$_GCR_HOSTNAME/$PROJECT_ID/$REPO_NAME/$_SERVICE_NAME:$COMMIT_SHA'
options:
substitutionOption: ALLOW_LOOSE
substitutions:
_DEPLOY_REGION: asia-northeast1
_GCR_HOSTNAME: asia.gcr.io
_PLATFORM: managed
_TRIGGER_ID: b3a80fb8-d156-49b9-9c2e-44a85d08171c
_SERVICE_NAME: dynamic-ranking-collection
tags:
- gcp-cloud-build-deploy-cloud-run
- gcp-cloud-build-deploy-cloud-run-managed
- dynamic-ranking-collection
ビルド実行をする際に--build-arg
を指定してあげる。
--build-arg ENV_VALUE=_ENV_VALUE
args:
- build
- '--bulid-arg'
- ENV_VALUE=_ENV_VALUE
あとはCloud Buildの環境変数に値を入れてあげると--build-arg
に値を渡すことができる。