DevOps-Driven Automation for Online Train Ticket Booking Systems
Div: D
Sl.
Name SRN
No.
1 Prachi 02FE22BCI029
2 Supriya 02FE22BCI051
3 Yashaswi 02FE22BCI058
4 Ishan 02FE22BCI160
Faculty In-charge : Prof. Neha
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Academic year 2024-25
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Motivation :
• Enables faster and safer deployment of new features using CI/CD.
• Ensures a reliable and scalable system through Docker and AWS.
• Reduces manual errors by automating the deployment process.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Introduction :
• In today's fast-moving digital world, people expect quick and reliable services—especially
when booking tickets online. To meet these expectations, it's important to build a system
that is not only fast but also safe and easy to update. This project focuses on creating an
Online Ticket Booking System using modern DevOps practices. It includes CI/CD
(Continuous Integration and Continuous Deployment), Docker containerization, and real-
time monitoring using AWS. By using this approach, we can reduce manual mistakes, keep
the deployment process consistent, and release new features faster. This means
developers can work more efficiently, and users get a better, smoother experience every
time they use the system.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Problem Statement :
• Online ticket booking systems face issues like slow deployments, frequent errors, and
inconsistent environments using traditional methods. A DevOps-driven approach—using
CI/CD, Docker, and AWS monitoring—can automate deployment, improve reliability, and
ensure faster delivery of features with better performance for users.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Objectives :
• To build a CI/CD pipeline using tools like GitHub, Jenkins, and Docker for
automated testing and deployment.
• To use containerization for portability across development and production
environments.
• To enable real-time monitoring and logging for system reliability and debugging.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Tech Stack Selection :
• Frontend (HTML, CSS, JavaScript): Builds the interactive user interface for web access.
•Backend (Nodejs):Handles ticket booking logic, user authentication, train search operations, and
database interactions.
•Database (Mongodb):Stores user details, train schedules, booking records, and transaction history.
•Version Control (GitHub): Tracks code changes and integrates with CI/CD pipelines.
•CI/CD & Automation (Jenkins): Automates build, test, and deployment pipelines triggered from
GitHub.
•Containerization (Docker): Packages the application and its environment for consistent deployment.
•Deployment (AWS EC2): Hosts the containerized web application.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
CI/CD Pipeline Workflow for Automated Software Deployment
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
CI/CD Pipeline Design and Implementation :
1. Source Code Management:
GitHub to store and manage source code.
2. Build Stage:
Docker and a custom Dockerfile to build an image including installation of dependencies.
3. Continuous Integration:
Set up Jenkins to automatically pull code from GitHub, build the Docker image.
4. Testing Stage:
Jenkins files to execute automated tests to ensure code quality.
5. Push(Container Image Storage):
Push Docker image to Docker Hub.
6. Deployment Stage:
Pulling and running the container on AWS EC2 using Docker Compose.
7. Monitoring & Logging:
Monitor the application and EC2 instance.
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi
Acknowledgement :
Thank you
Department of Computer Science and Engineering,
KLE Technological University’s Dr. M. S. Sheshgiri College of Engineering and Technology, Belagavi