A Dockerized Full Stack DevOps Exam App built using:
- 🐍 Flask (Backend)
- 🖥 HTML + JavaScript (Frontend)
- 🐬 MySQL 5.7 (Database)
- 🐳 Docker + Docker Compose
sudo apt update
sudo apt install -y docker.io docker-composeEnable and start Docker:
sudo systemctl enable docker
sudo systemctl start dockerVerify installation:
docker --version
docker-compose --versiongit clone https://github.com/VedTambe/Devops-Exam-App.git
cd Devops-Exam-AppCreate a file named .env at the root of the project and add:
PORT=5000
DB_HOST=exam-mysql
DB_USER=exam_user
DB_PASSWORD=exam_pass
DB_NAME=devops_examThe file db/init.sql will:
- Create a database
devops_exam - Create a table
results - Create user
exam_userwith passwordexam_pass - Grant all privileges
docker-compose up --buildThis will:
- Start MySQL container on port 3306
- Start Flask app on port 5000
- Load environment variables from
.env
Open browser and visit:
http://<your-ec2-public-ip>:5000/
docker exec -it mysql_db /bin/bash
mysql -u root -pThen run:
SHOW DATABASES;
USE devops_exam;
SHOW TABLES;
SELECT * FROM results;docker-compose downIf you update the init.sql, run:
docker volume rm devops-exam-app_db_data
docker-compose up --buildBuilt with ❤️ by Vedant Tambe