DeployStack is a series of applications that are prebuilt and architected to demonstrate common application architectures. Each DeployStack includes infrastructure Terraform scripts and starter code. When the Terraform scripts run, they build the architecture and deploy the code into that infrastructure. You can then customize the code to suit your application needs.
If DeployStack doesn't have an app to suit your needs, see the Cloud Architecture Center for best practices, implementation recommendations, and more to help you design a Google Cloud deployment that matches your business needs. The DeployStack library is still growing, so check back soon for more applications.
Architecture
Each DeployStack is open-source. They will always contain the following files:
- ./main.tf - the Terraform script that deploys the architecture
- ./deploystack.json - a configuration file for the collection script.
These files dictate what information DeployStack will request and what infrastructure will be built.
How does it work?
Run your DeployStack by taking the following steps:
Follow the "Open in Cloud Shell" link for the stack.
When the Cloud Shell terminal loads, DeployStack will start up automatically:
Enter the required settings as prompted. These settings are then configured in the
deploystack.json
file.The result of this command is an output a file named
terraform.tfvars
. This file gives Terraform the customized settings used to configure the architecture.Once the
terraform.tfvars
is created, the install routine calls Terraform to apply the contents ofmain.tf
andterraform.tfvars
.Upon completion of the install routine, the architecture is deployed in the designated Google Cloud project.
Source Code
All of the stacks are released as Open Source code on GitHub. They are here:
- DeployStack Core Project
- Cost Sentry
- ETL Pipeline
- Load Balanced Vms
- NoSQL Client Server
- Ops Agent
- Single VM
- Static Hosting with Domain
- Storage Event Function App
- Three Tier App
- Serverless End-To-End Photo Sharing Application