Skip to content

An End-To-End Banking Application built using SpringBoot and Deployed using DevOps practices.

Notifications You must be signed in to change notification settings

umashankar1987/Springboot-BankApp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

End-to-End Bank Application Deployment using DevSecOps on AWS EKS

  • This is a multi-tier bank an application written in Java (Springboot).

Login diagram Transactions diagram

PRE-REQUISITES FOR THIS PROJECT:

  • AWS Account
  • AWS Ubuntu EC2 instance (t2.medium)
  • Install Docker
  • Install docker compose

DEPLOYMENT:

Deployments Paths
Deployment using Docker and Networking Click me
Deployment using Docker Compose Click me
Deployment using Jenkins on EKS Click me
Deployment using Argocd on EKS Click me

STEPS TO IMPLEMENT THE PROJECT

  • Deployment using Docker

    • Clone the repository
    git clone -b DevOps https://github.com/DevMadhup/Springboot-BankApp.git

    • Install docker, docker compose and provide neccessary permission
    sudo apt update -y
    
    sudo apt install docker.io docker-compose-v2 -y
    
    sudo usermod -aG docker $USER && newgrp docker

    • Move to the cloned repository
    cd Springboot-BankApp

    • Build the Dockerfile
    docker build -t madhupdevops/springboot-bankapp .

Important

Make sure to change docker build command with your DockerHub username.

  • Create a docker network
docker network create bankapp

  • Run MYSQL container
docker run -itd --name mysql -e MYSQL_ROOT_PASSWORD=Test@123 -e MYSQL_DATABASE=BankDB --network=bankapp mysql

  • Run Application container
docker run -itd --name BankApp -e SPRING_DATASOURCE_USERNAME="root" -e SPRING_DATASOURCE_URL="jdbc:mysql://mysql:3306/BankDB?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC" -e SPRING_DATASOURCE_PASSWORD="Test@123" --network=bankapp -p 8080:8080 madhupdevops/springboot-bankapp

  • Verify deployment
docker ps

  • Open port 8080 of your AWS instance and access your application
http://<public-ip>:8080

Congratulations, you have deployed the application using Docker

  • Deployment using Docker compose

  • Install docker compose
sudo apt update
sudo apt install docker-compose-v2 -y

  • Run docker-compose file present in the root directory of a project
docker compose up -d

  • Access it on port 8080
  http://<public-ip>:8080

Important

If you face issues with exiting docker container while running docker compose, run docker compose down and then docker compose up -d.

About

An End-To-End Banking Application built using SpringBoot and Deployed using DevOps practices.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 55.0%
  • Java 42.4%
  • Dockerfile 2.6%