- This is a multi-tier bank an application written in Java (Springboot).
- AWS Account
- AWS Ubuntu EC2 instance (t2.medium)
- Install Docker
- Install docker compose
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 |
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
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
.