# デプロイの方法について ## インストール方法 MACの場合 ```sh brew tap hashicorp/tap brew install hashicorp/tap/terraform # 確認 terraform -version ``` ## 環境について * terraform * google cloud * Cloud Run Job ## 実行する方法 ```sh # 初期化を実行する cd terraform # Terraformの初期化 terraform init # アーティファクトやバケットについては先に生成する terraform apply \ -var-file=_dev.tfvars \ -auto-approve \ -target="google_artifact_registry_repository.repo" # DockerファイルをビルドしてGARにプッシュする場合 cd ../ # 1. Artifact Registryへの認証設定(初回のみ実行) source deploy.env gcloud auth configure-docker "${AR_REGION}-docker.pkg.dev" # arm64 source deploy.env gcloud builds submit --tag "${IMAGE_URI}" . echo "${IMAGE_URI}" # デプロイするコンポーネントを確認する cd terraform terraform plan \ -var-file=_dev.tfvars \ -var="hash_suffix=${HASH_SUFFIX}" # デプロイを実行する terraform apply \ -var-file=_dev.tfvars \ -var="hash_suffix=${HASH_SUFFIX}" \ -auto-approve ``` ローカルでビルドで試す場合 ```sh # デフォルトでビルドする場合 docker build -t cloud-run-job-base . # arm64でビルドしたい場合 docker buildx build -platform linux/amd64,linux/arm64 -t cloud-run-job-base . # Dockerを実行する(1回だけ実行してコンテナインスタンスを削除する場合) docker run --rm cloud-run-job-base:latest ``` ### CI/CDでデプロイを実行する場合 **Github(Gitea) Acrtionsで実行する場合** **Cloud Buildで実行する場合** ### Big Quderyにデータが取得できた場合をトリガーにしてJOBを実行する方法