1.1 KiB
1.1 KiB
GCP Cloud Run
CLI
curl https://sdk.cloud.google.com | bash
gcloud auth login
gcloud config set project PROJECT_ID
gcloud run deploy SERVICE_NAME \
--image gcr.io/PROJECT/image \
--region us-central1 \
--allow-unauthenticated
Config: cloudbuild.yaml
steps:
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'gcr.io/$PROJECT_ID/my-app', '.']
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'gcr.io/$PROJECT_ID/my-app']
- name: 'gcr.io/cloud-builders/gcloud'
args: ['run', 'deploy', 'my-app',
'--image', 'gcr.io/$PROJECT_ID/my-app',
'--region', 'us-central1',
'--allow-unauthenticated']
Detection
cloudbuild.yaml,app.yaml(GAE format), Dockerfile
Free Tier (Permanent)
- 2M requests/mo, 180K vCPU-seconds/mo, 360K GiB-seconds/mo
Cost Optimize
--min-instances=0for scale-to-zero- Use Artifact Registry instead of GCR
Rollback
gcloud run services update-traffic SERVICE --to-revisions=REVISION=100
Best For
Containerized microservices, pay-per-request serverless, burst traffic