A startup script is a file that contains commands that run when a virtual machine (VM) instance boots. Compute Engine provides support for running startup scripts on Linux VMs and Windows VMs.
Prerequisites
To run scripts stored in metadata on a VM instance, the guest environment must be installed and running.
- The guest environment includes the guest agent (for example, google-guest-agent on Linux) that reads the script content or URL from the instance's metadata and initiates execution.
- All public Compute Engine images come with the guest environment preinstalled.
- If you create a custom image, you must manually install the Google Guest Environment to ensure scripts from metadata and other Google Cloud features function properly.
The following table contains links to documentation that describes how to use startup scripts.
Startup script task
Best used for
Link to procedure
Access metadata from a startup script
Passing different values to each VM that uses the same script
What's next
- Learn how to add a shutdown script .
- Learn how to use startup scripts on Linux VMs .
- Learn how to use startup scripts on Windows VMs .

