Coffeelog is a multi-tier web application where coffee enthusiasts can log in with their Google accounts and share their coffee experiences with other people.
This is intended to be a sample cloud-native application to showcase the best practices in application deployment, products of Google Cloud and test new features.
Coffeelog is written in Go, uses gRPC for communication between microservices. It runs on Google Cloud and uses Cloud Datastore, Cloud Storage, Google Container Engine, Cloud Container Builder, Stackdriver Logging and Stackdriver Trace.
The following steps will walk you through on how to prepare requirements, deploy and run this application.
Note: If you see any issues with the steps below, please open an issue.
- Requirements
- Set up service credentials
- Set up storage
- Set up a Kubernetes cluster on Google Container Engine
- Set up continuous image build on Container Builder
- Set up continuous deployment on Container Builder
- Try out the application!
Monitoring:
- π Set up distributed tracing with Stackdriver Trace
- π Browse application logs with Stackdriver Logging
- π Set up alerting with Stackdriver Monitoring
Advanced topics:
- π Set up a domain name
- π Set up TLS with Letβs Encrypt and kube-lego
- π Limit access to secrets with Kubernetes Service accounts
- π Set up TLS communication between microservices with linkerd
Local development (if you are interested in developing this app further)
Disclaimer: This is not an official Google product.