Attaching "Serverless VPC Access connector" to "Cloud Run" via GCP cli
1) Create a subnetwork in the VPC for the Serverless VPC Access connector.
gcloud compute networks subnets create SUBNET_NAME \
--range=10.16.8.0/28 --network=VPC_NETWORKNAME --region=us-east4
2) Create a Serverless VPC Access connector with a pre-created subnetwork.
gcloud compute networks vpc-access connectors create VPC_CONNECTER_NAME \
--region=us-east4 \
--subnet-project=GCP_PROJECT_NAME \
--subnet=SUBNET_NAME
3) Create a new Cloud Router to program a NAT gateway.
gcloud compute routers create serverless-vpc-router \
--network=VPC_NETWORKNAME \
--region=us-east4
4) Reserve a static IP address.
gcloud compute addresses create NAME_FOR_STATIC_IP --region=us-east4
5) Create a Cloud NAT gateway.
gcloud compute routers nats create serverless-nat \
--router=serverless-vpc-router \
--region=us-east4 \
--nat-custom-subnet-ip-ranges=SUBNET_NAME \
--nat-external-ip-pool=NAME_FOR_STATIC_IP
6) Deploy or update your Cloud Run service to use the VPC connector and route all egress traffic through it.
gcloud run deploy CLOUDRUN_SERVICE_NAME \
--image=gcr.io/idt-dev4/i-direct-api:latest \
--vpc-connector=VPC_CONNECTER_NAME \
--vpc-egress=all-traffic