=====gcloud===== gcloud version =====create virtual machine===== gcloud compute instances create my-first-vm \ --project=u-p1-2023 \ --zone=europe-west1-b \ --machine-type=e2-micro \ --network-interface=network-tier=PREMIUM,stack-type=IPV4_ONLY,subnet=default \ --maintenance-policy=MIGRATE \ --provisioning-model=STANDARD \ --service-account=538478614556-compute@developer.gserviceaccount.com \ --scopes=https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/trace.append \ --tags=http-server,https-server \ --create-disk=auto-delete=yes,boot=yes,device-name=my-first-vm,image=projects/debian-cloud/global/images/debian-11-bullseye-v20230411,mode=rw,size=10,type=projects/u-p1-2023/zones/us-west4-b/diskTypes/pd-balanced \ --no-shielded-secure-boot \ --shielded-vtpm \ --shielded-integrity-monitoring \ --labels=ec-src=vm_add-gcloud \ --reservation-affinity=any =====images List===== gcloud compute images list | grep debian =====machien type===== gcloud compute machine-types list --filter="zone:( europe-central2-a europe-west1-d )" =====example with gke===== ====set default project:==== $ gcloud config set project my-first-gke-project-386406 setup our compute default zone: $ gcloud config set compute/zone europe-central2-a $ gcloud compute regions list $ gcloud config set compute/region europe-central2 $ gcloud container clusters create hello-cluster --num-nodes=1 get-credential of my gke cluster: $ gcloud container clusters get-credentials hello-cluster create a deployment on my server using a sample from google dev: $ kubectl create deployment hello-server --image=us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0 deployment.apps/hello-server created create an expose to internet: a service $ kubectl expose deployment hello-server --type LoadBalancer --port 80 --target-port 8080 get pods and services: cianodoro@cloudshell:~ (my-first-gke-project-386406)$ kubectl get pods NAME READY STATUS RESTARTS AGE hello-server-c4cc56fb6-t5kgl 1/1 Running 0 3m20s cianodoro@cloudshell:~ (my-first-gke-project-386406)$ kubectl get service NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-server LoadBalancer 10.108.14.12 34.116.138.183 80:31638/TCP 56s kubernetes ClusterIP 10.108.0.1 443/TCP 19m cianodoro@cloudshell:~ (my-first-gke-project-386406)$ kubectl get service hello-server NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-server LoadBalancer 10.108.14.12 34.116.138.183 80:31638/TCP 66s