zkt25/Exam/README.md
2025-05-07 08:53:50 +00:00

71 lines
3.0 KiB
Markdown

# To do app
## Description
This is a Todo web application builds for the final exam for the course Cloud technologies. The application is a todo list manager designed for users to keep track of their daily tasks. This is designed to be a functional demonstration of cloud deployment, utilizing multiple containers and services.
## Public Cloud and Services Used
- **Public Cloud Provider**: Microsoft Azure
- **Cloud Services**:
- **Azure Virtual Machines**: For hosting the application server.
- **Azure SQL Database**: For managed database services.
- **Azure Blob Storage**: For storing static assets and backups.
- **Kubernetes/Docker Objects**:
- **Docker Containers**: Used for microservices architecture.
- **Kubernetes Pods**: For managing containerized applications.
- **Persistent Volumes**:
- **Azure Disk Storage**: For persistent data storage.
- **Databases**:
- **Azure SQL Database**: Used as the primary database for the application.
## Files and Their Contents
- **`.env`**: Environment variables for configuration.
- **`.gitignore`**: Specifies files and directories to ignore in Git.
- **`components.json`**: Configuration for application components.
- **`docker-compose.yml`**: Docker Compose file for defining and running multi-container Docker applications.
- **`Dockerfile`**: Instructions to build the Docker image.
- **`nginx.conf`**: Nginx configuration file for the web server.
- **`package.json`**: Node.js dependencies and scripts.
- **`final-cloud.com_ssl_certificate.cer`**: SSL certificate for HTTPS.
- **`index.html`**: Main HTML file for the web application.
- **Other configuration files**: `eslint.config.js`, `postcss.config.cjs`, `tailwind.config.js`, `tsconfig.json`, etc.
## Instructions to View and Use the Application
1. **Prerequisites**:
- Ensure you have Docker and Docker Compose installed on your local machine.
- Ensure you have the necessary Azure credentials and permissions to deploy services.
2. **Build and Run the Application**:
- Open a terminal and navigate to the project directory.
- Build the Docker image using the following command:
```bash
docker-compose build
```
- Start the application using Docker Compose:
```bash
docker-compose up -d
```
- This will deploy the application using the configurations specified in `docker-compose.yml`.
3. **Access the Application**:
- Open your web browser.
- Navigate to `https://final-cloud.com`.
## Instructions to Remove the Application
1. **Stop and Remove Containers**:
- Open a terminal and navigate to the project directory.
- Stop and remove the containers, networks, and other resources defined in the `docker-compose.yml` file:
```bash
docker-compose down
```
2. **Clean Up Azure Resources**:
- Manually delete any Azure resources created for this application, such as virtual machines, Kubernetes clusters, and storage accounts, through the Azure portal or using Azure CLI commands.
**Hope you'll enjoy my application! ^^**