Eliminar README.md
This commit is contained in:
parent
6d207bb94e
commit
22de5c762d
143
README.md
143
README.md
@ -1,143 +0,0 @@
|
|||||||
# Assignment 1 – Docker Notes App
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
|
|
||||||
This project is a simple **Notes Application** built using Docker.
|
|
||||||
It demonstrates how to run a multi-container application composed of:
|
|
||||||
|
|
||||||
- Frontend (Nginx)
|
|
||||||
- Backend (Flask REST API)
|
|
||||||
- Database (PostgreSQL)
|
|
||||||
|
|
||||||
The application allows users to:
|
|
||||||
- Add notes
|
|
||||||
- View saved notes
|
|
||||||
- Delete notes
|
|
||||||
|
|
||||||
All data is stored persistently using a Docker volume.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Architecture
|
|
||||||
|
|
||||||
The application consists of three services:
|
|
||||||
|
|
||||||
### 1. Frontend
|
|
||||||
- Technology: Nginx
|
|
||||||
- Serves static HTML page
|
|
||||||
- Proxies API requests to backend
|
|
||||||
- Accessible via browser
|
|
||||||
|
|
||||||
### 2. Backend
|
|
||||||
- Technology: Python (Flask)
|
|
||||||
- Provides REST API:
|
|
||||||
- `GET /api/notes`
|
|
||||||
- `POST /api/notes`
|
|
||||||
- `DELETE /api/notes/{id}`
|
|
||||||
- Connects to PostgreSQL database
|
|
||||||
|
|
||||||
### 3. Database
|
|
||||||
- Technology: PostgreSQL 16
|
|
||||||
- Stores notes data
|
|
||||||
- Uses persistent Docker volume
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Networking
|
|
||||||
|
|
||||||
All containers are connected via a Docker virtual network:
|
|
||||||
|
|
||||||
- **Network name:** `zkt_net`
|
|
||||||
|
|
||||||
This allows communication between:
|
|
||||||
- frontend → backend
|
|
||||||
- backend → database
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Persistent Storage
|
|
||||||
|
|
||||||
- **Volume name:** `zkt_db_data`
|
|
||||||
- Purpose: store PostgreSQL data
|
|
||||||
- Ensures data is not lost after stopping containers
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Containers Used
|
|
||||||
|
|
||||||
| Container Name | Description |
|
|
||||||
|----------------|------------------------|
|
|
||||||
| zkt_frontend | Nginx web server |
|
|
||||||
| zkt_backend | Flask API |
|
|
||||||
| zkt_db | PostgreSQL database |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- Docker
|
|
||||||
- Docker Compose (plugin)
|
|
||||||
- Linux / WSL / Docker Desktop
|
|
||||||
- Web browser
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## How to Run the Application
|
|
||||||
|
|
||||||
### 1. Prepare the application
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./prepare-app.sh
|
|
||||||
|
|
||||||
### 2. Start the application
|
|
||||||
|
|
||||||
./start-app.sh
|
|
||||||
|
|
||||||
### Then open your browser:
|
|
||||||
|
|
||||||
http://localhost:8080
|
|
||||||
|
|
||||||
|
|
||||||
### 3. Stop the application
|
|
||||||
./stop-app.sh
|
|
||||||
|
|
||||||
### 4. Remove the application
|
|
||||||
./remove-app.sh
|
|
||||||
|
|
||||||
## Testing the Application
|
|
||||||
|
|
||||||
-Open the web interface
|
|
||||||
-Add a note
|
|
||||||
-Verify it appears in the list
|
|
||||||
-Stop and restart the app:
|
|
||||||
./stop-app.sh
|
|
||||||
./start-app.sh
|
|
||||||
-Refresh the page
|
|
||||||
|
|
||||||
## If the note is still there → persistence works correctly
|
|
||||||
|
|
||||||
## Key Concepts Demonstrated
|
|
||||||
|
|
||||||
-Multi-container Docker application
|
|
||||||
-Docker Compose usage
|
|
||||||
-Container networking
|
|
||||||
-Persistent storage with volumes
|
|
||||||
-REST API communication
|
|
||||||
-Reverse proxy with Nginx
|
|
||||||
|
|
||||||
## Use of Artificial Intelligence
|
|
||||||
|
|
||||||
Artificial intelligence was used to:
|
|
||||||
|
|
||||||
-Design application architecture
|
|
||||||
-Generate initial code (frontend, backend, Docker config)
|
|
||||||
-Explain Docker concepts
|
|
||||||
-Assist with debugging and troubleshooting
|
|
||||||
-Prepare documentation
|
|
||||||
|
|
||||||
## Tool used:
|
|
||||||
|
|
||||||
-ChatGPT
|
|
||||||
-Gemini
|
|
||||||
|
|
||||||
## Pablo Pérez Arcas
|
|
||||||
Loading…
Reference in New Issue
Block a user