A cloud engineer is deploying a Compute Engine virtual machine instance named `web-app-frontend` in zone `us-east1-b`. The engineer has written a setup shell script stored on their local workstation at `./scripts/install-web.sh` that must execute automatically whenever the instance boots up for the first time. Which `gcloud` command correctly creates the virtual machine instance and passes the local script file as a startup script?
- gcloud compute instances create web-app-frontend --zone=us-east1-b --metadata-from-file=startup-script=./scripts/install-web.shCevap
- Bgcloud compute instances create web-app-frontend --zone=us-east1-b --metadata=startup-script=./scripts/install-web.sh
- Cgcloud compute instances create web-app-frontend --zone=us-east1-b --startup-script=./scripts/install-web.sh
- Dgcloud compute instances create web-app-frontend --region=us-east1 --metadata-from-file=startup-script=./scripts/install-web.sh
Cevap
The command using `gcloud compute instances create web-app-frontend --zone=us-east1-b --metadata-from-file=startup-script=./scripts/install-web.sh` is correct.
To pass the contents of a local file as custom instance metadata (such as a startup script), Google Cloud CLI requires the `--metadata-from-file` flag with the key-value pair `startup-script=<path-to-file>`. Additionally, Compute Engine instances are zonal resources and must specify `--zone`.
Adım Adım Çözüm
Anahtar Kavram
Compute Engine startup script configuration using gcloud metadata flags