77 lines
1.7 KiB
Markdown
77 lines
1.7 KiB
Markdown
# デプロイの方法について
|
|
|
|
## インストール方法
|
|
|
|
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を実行する方法
|