This project is a containerized full-stack Notes Application designed to demonstrate practical deployment skills using Docker and Nginx on a cloud virtual machine.The application runs as a multi-service system and is accessible through a reverse proxy setup, simulating a real-world production deployment environment.
The application consists of the following components:
- Frontend (React)
- Backend Service (Python-based API)- 3.9 version
- Reverse Proxy (Nginx)
- Docker-based container runtime environment
- AWS EC2 instance for deployment
Client → Nginx → Application Service → Backend API
Before running the project, ensure the following are installed:
- Docker
- Docker Compose
- Git
- AWS EC2 instance (for deployment use-case)
git clone https://github.com/Aayusha-Regmi/notes-application.gitdocker build -t notes-app .docker compose up -d docker psdocker logs <container_id>Install Nginx and configure it as a reverse proxy to make the application accessible.
sudo apt-get update
sudo apt install nginxThe configuration file contains basic nginx setup named as default.conf
sudo nano /etc/nginx/sites-available/defaultsudo systemctl restart nginx- Open browser
- Visit
http://<EC2_PUBLIC_IP>
Step 1: Go to JenkinsFile
Step 2: Make changes
Step 3: Commit changes
Auto build takes place at jenkins server.