A full stack blueprint for DevOps Essentials .
Project VULCAN
is intended to provide a blueprint/template bundled with a full stack essential tool kit encapsulated with automation & utility scripts required for any service/application to be hosted on a public cloud .
H I G H L I G H T S :
- An in-out Python Project
- 3 Tier web application based on MVC paradigm
- Microservices Architecture
- Dockerized images for Core , Sidecar applications & Database
- Gradle Project
- Container Orchestration via Kubernetes
- Infrastructure as a Code with Terraform
- Configuration Management with Ansible
- CI with Jenkins
- Automation to host service/application on AWS, GCP & OCI
T E C H S T A C K :
-
Programming Language
Python3 | >= v3.7
-
Build Tools
Gradle | >= v6x
-
Continuous Integration Tool
Jenkins | >= v2.2x
-
Infrastructure as a Code
Terraform | >= v0.12
-
Containerization Tool
Docker | >= v19.03x
Docker-compose | >= v1.26.2 -
Docker Registry
-
Container Orchestration
Kubernetes | >= v1.17
kubectl | >= v1.2
minikube
NOTE : Make sure to install all the above dependencies as per the Operating System & desired bit processor before running any of the subprojects , any other specific pre-requisites (if any) are detailed on each of the subproject's README
HOW TO RUN THE SUB PROJECTS :
-
Click on each of the projects to see how
VULCAN-1.1 : GIT
[ DISTRIBUTED VERSION CONTROL ]
+ DOCKER[ CONTAINERIZATION ]
+ DOCKER COMPOSE[ MULTI CONTAINER SETUP ]
VULCAN-1.2 : GIT
[ DISTRIBUTED VERSION CONTROL ]
+ DOCKER[ CONTAINERIZATION ]
+ GRADLE[ BUILD + DEPENDENCY MANAGEMENT ]
+ DOCKERHUB[ DOCKER REGISTRY ]
VULCAN-1.3 : GIT
[ DISTRIBUTED VERSION CONTROL ]
+ DOCKER[ CONTAINERIZATION ]
+ GRADLE[ BUILD + DEPENDENCY MANAGEMENT ]
+ DOCKERHUB[ DOCKER REGISTRY ]
+ JENKINS PIPELINE[ CONTINOUS INTEGRATION ]
VULCAN-1.4 : GIT
[ DISTRIBUTED VERSION CONTROL ]
+ DOCKER[ CONTAINERIZATION ]
+ GRADLE[ BUILD + DEPENDENCY MANAGEMENT ]
+ DOCKERHUB[ DOCKER REGISTRY ]
+ JENKINS PIPELINE WITH GRADLE BUILD COMMANDS[ CONTINOUS INTEGRATION ]
VULCAN-1.5 : GIT
[ DISTRIBUTED VERSION CONTROL ]
+ DOCKER[ CONTAINERIZATION ]
+ GRADLE[ BUILD + DEPENDENCY MANAGEMENT ]
+ DOCKERHUB[ DOCKER REGISTRY ]
+ JENKINS PIPELINE WITH GRADLE BUILD COMMANDS[ CONTINOUS INTEGRATION ]
+ KUBERNETES[ CONTAINER ORCHESTRSATION ]
-
Install Tree if !Exists
LINUX $ sudo apt-get install tree MACOS $ brew install tree
$ tree -I 'node_modules|cache|lib|venv|build'
$ WINDOWS (GitBash)
download exe and add it to "C:\Program Files\Git\usr\bin" :