Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jitsusama/kubernetes-overview
Provides an overview of Kubernetes via a functional multi-component project along with deployment configuration.
https://github.com/jitsusama/kubernetes-overview
javascript kubernetes mariadb python react
Last synced: 16 days ago
JSON representation
Provides an overview of Kubernetes via a functional multi-component project along with deployment configuration.
- Host: GitHub
- URL: https://github.com/jitsusama/kubernetes-overview
- Owner: Jitsusama
- Created: 2019-12-03T14:26:40.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-01T14:02:36.000Z (about 2 years ago)
- Last Synced: 2024-11-19T07:08:59.931Z (3 months ago)
- Topics: javascript, kubernetes, mariadb, python, react
- Language: JavaScript
- Size: 1000 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Overview
This project includes an example website with accompanying backend and storage
tiers along with the code necessary to deploy the entire stack on a Kubernetes
distribution of choice.It uses only high level Kubernetes abstractions such that it should be
deployable to any cloud or self-installed Kubernetes provider.# Structure
The _website_ directory contains the code that defines the website itself. It
calls the backend service in order to have CRD events handled by the backend
tier of the solution. This ultimately is bundled up into a Docker image and
published up to the Docker Hub.The _backend_ directory contains the code that defines the API utilized by the
website. It exposes a very basic HTTP/JSON/Plain Text API that is consumed by
the website. This ultimately is bundled up into a Docker image and published up
to the Docker Hub.The _deploy_ directory contains the Kubernetes deployment configuration that
can be used to deploy the whole solution to your Kubernetes provider of choice.
The _kube-system_ directory below it contains an ingress controller deployment
along with the RBAC objects necessary to give it access to the Kubernetes API.
If your cloud provider includes a native ingress controller, it can be ignored.
The _demo-webapp_ directory below _deploy_ contains the namespaced definitions
necessary to bring up the entire software stack, including the website, backend
and storage tiers. You should first apply the _namespace.yaml_ file before
applying the rest of the YAML file in that directory, as they depend on it
existing.# Deployment Steps
You can run the following commands to deploy the solution into a Kubernetes
cluster (**NOTE**: *GCP doesn't require the kube-system configuration*):```bash
$ kubectl apply -f ./deploy/kube-system -R
$ kubectl apply -f ./deploy/demo-webapp -R
```