Custom disk images are different from public images managed by Google. These are local to your project. They are useful for creating one or more instances when you have customized your instance in a certain way. For example, you could have installed updates, some applications, or could have set up some environment to work on and you would not want to repeat the procedure over again. Unlike snapshots, custom images are to be backed up once per instance only. We can create multiple images as variants, but they will be complete backups of the instance and will result in more billing due to access storage:
To create the image, use the gcloud compute instance create command and provide an image name, source disk, the zone of the source disk, and the image family. The image family is an optional argument that specifies which OS we are using along with its version. In our case, it is Debian 9: