Deploying a Multi-Container Voting Application Using Docker Compose
In this project, I deployed and tested a cloud-native microservices application using Docker Compose. The application is a real-time voting platform where users cast votes and view the results in a live dashboard.
The system demonstrates key DevOps and cloud fundamentals:
-
Containerization of multi-language services (Python, Node.js, .NET)
-
Redis message queue
-
PostgreSQL database integration
-
Stateless microservices communication
-
Scaling worker services using Docker Compose
-
Observability with live logs and DB verification
This workflow reflects modern distributed systems architecture and hands-on container orchestration practice.
🏗 Architecture Overview
|
Component |
Technology |
Purpose |
|
Vote App |
Python + Flask |
User UI for casting votes |
|
Result App |
Node.js |
Displays live vote results |
|
Redis Queue |
Redis |
Stores votes temporarily as messages |
|
Workers |
.NET |
Consume queue messages and update DB |
|
Database |
PostgreSQL |
Stores persistent vote records |
|
Orchestration |
Docker Compose |
Manages and networks the services |
Architecture Flow
Comments
Post a Comment