I've done something similar to keep it small with potential to go multi region for one of my new projects using Bitbucket and Google Cloud.
Bitbucket pipelines that create an image of the app, create instance template with a container "gcloud beta compute instance-templates create-with-container", create instance group, create DNS, global load balancer, SSL certs and rolling update of the instance groups with a new version (if applicable).
Using preemptible g1-small to keep costs down but deployed in at least two zones per region.
Comments
I've done something similar to keep it small with potential to go multi region for one of my new projects using Bitbucket and Google Cloud.
Bitbucket pipelines that create an image of the app, create instance template with a container "gcloud beta compute instance-templates create-with-container", create instance group, create DNS, global load balancer, SSL certs and rolling update of the instance groups with a new version (if applicable).
Using preemptible g1-small to keep costs down but deployed in at least two zones per region.
Where do you store your data? Since you use at least two zones, how do you keep your data synchronized between zones?
Do you use SQLite?
What do you mean by an "image of the app"? A Docker image or something else?
How does your rolling deploy work?