app.juneboku.xyz を GCP で動かしてみる
https://scrapbox.io/files/6634f9ad3bd0300025cafa5a.webp
メモ
hr.icon
Cloud Run
アプリケーションの実行環境
初回デプロイも 2 回目以降のデプロイも下記コマンドでいけるっぽい
code:sh
gcloud run deploy app-juneboku-xyz --source . --project app-juneboku-xyz --region asia-northeast1 --allow-unauthenticated --set-env-vars RAILS_MASTER_KEY=$(cat config/master.key)
https://gyazo.com/ebd48654d57762374845345951efd415
Cloud SQL
code:sh
❯ gcloud sql tiers list
code:sh
gcloud sql instances create app-juneboku-xyz-db --database-version POSTGRES_15 --tier db-f1-micro --region asia-northeast1
gcloud sql users create app-juneboku-xyz --instance=app-juneboku-xyz-db --password=$(cat dbpassword)
Cloud Build
GitHub のリポジトリを設定して、Trigger として main ブランチへのプッシュを指定しておいた
Cloud Scheduler
指定の URL に対して定期的に HTTP GET リクエストを送る、は画面ポチポチだけで実現できた
https://gyazo.com/2cecb20fd03df060d5e509e256a5b221
Cloud Load Balancing
Secret Manager
code:sh
gcloud secrets create RAILS_MASTER_KEY --data-file config/master.key
gcloud projects describe app-juneboku-xyz --format='value(projectNumber)'
gcloud secrets add-iam-policy-binding RAILS_MASTER_KEY --member serviceAccount:${PROJECT_NUMBER}-compute@developer.gserviceaccount.com --role roles/secretmanager.secretAccessor