Is there a way to directly deploy a container from docker hub to google compute engine?

Yes, you may deploy an image directly from the docker hub.

When creating an instance in GCE, in the Container Image text box, you have to type the full path of the docker hub repository.

For instance, for the nginx public docker image, the container image that you should type is registry.hub.docker.com/library/nginx

The registry path for any official docker hub image should be written in the following way: registry.hub.docker.com/library/image.

For a private docker image, the container image that you should type is registry.hub.docker.com/username/repo or registry.hub.docker.com/username/repo:tag.