This repository contains the three tier web app that's used in the Getting Started with Garden video series and in the 'Your First Project' tutorial from our documentation.
- If you're coming from the tutorial, checkout out to the
tutorial-start
branch to follow along. - If you're coming from the tutorial but can't wait to see the end result, checkout out to the
tutorial-complete
branch. - If you're here to look at the end result of the "Getting Started" video, use the
main
branch.
If you see any issues or bugs, kindly report them to the main Garden repo.
The project is a simplified version of the microservice voting application you'll find in various Garden examples. Garden is typically used in projects that have multiple microservices but sometimes its better to keep things simple and here we have a three-tier web app version with API, web and database components.
The main
branch that the "Getting Started" video is based off uses the ephemeral-kubernetes
plugin. The tutorial from our documentation however goes into more detail and discusses the different options for deploying the project to Kubernetes.
The project is a voting application with the following components:
web
— A frontend Vue applicationapi
— A Python API serverdb
— A Postgres database
These services are built, deployed, and tested with Garden actions.
Specifically, the api
and web
components have their own Kubernetes manifests so we use the container
Build action to build them
and the kubernetes
Deploy action to deploy them.
The db
component is an "off the shelf" Postgres Helm chart that's deployed via the helm
Deploy action.