Janus Core
Janus is collection of projects used to demonstrate various cloud patterns. This project serves as the starting point to build these examples yourself.
Goals
- Demonstrate an n-tier architecture
- Deploy to various cloud providers
TODO
- Terraform to setup k8 dashboard
- Publish docker images
- Terraform to configure local K8
Requirements
Gradle(Optional you can use the Gradle wrapper instead)
Node - Tested on v8.11.3
npm - (Bundled with Node) Tested on v6.1.0
* [Windows via Git for Windows](http://gitforwindows.org/)
* OSX & (Most) Linux users should already have Bash
Getting Started
To get started, you'll likely want to check out the related Janus projects and build them locally.
Local Setup
Create a folder for your Janus projects
mkdir janus
cd janus
Check out this project:
git clone https://github.com/AndrewBell/janus-core.git
Run the local bootstrap script:
cd janus-core
sh ./bootstrap-local.sh
Run Locally (Docker)
To startup the project locally:
docker-compose up -d
Clean Up Locally
To simply stop the services:
docker-compose down
To clean up images and volumes too:
docker-compose down --rmi all --volumes --remove-orphans
Run Locally (Kubernetes)
terraform apply
Open http://localhost
Clean Up Locally (Kubernetes)
terraform destroy
Additional Options
Install the Kubernetes dashboard:
kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
Search for the dashboard pod:
kubectl get pods --all-namespaces=true -o=custom-columns=NAME:.metadata.name | grep dashboard
Setup port forwarding for dashboard:
kubectl port-forward <pod-name-from-above> 8443:8443
Additional Resources
Contributing
If you would like to make an update to this project, fork and open a pull request. If you have any questions, please feel free to reach out (contact info below)
Contact Me
Andrew "Doc" Bell
homepage: www.recursivechaos.com
email: andrew@recursivechaos.com
twitter: @recursive_chaos