| # Docker Run Guide 🐳 |
|
|
| Here is a quick, point-wise guide on how the SMTP-enabled Docker container stack works and how the components connect together. |
|
|
| ## 1. Access Links (Click to Open) |
| * 🖥️ **React Frontend**: [http://localhost:5173](http://localhost:5173) |
| * ⚙️ **FastAPI Backend (Swagger Docs)**: [http://localhost:8000/docs](http://localhost:8000/docs) |
| * 🏠 **Backend API Status**: [http://localhost:8000](http://localhost:8000) |
|
|
| --- |
|
|
| ## 2. How the Components Connect |
| * **Backend (`./backend`)**: |
| * Runs on port `8000`. |
| * Automatically loads your SMTP email settings (email address and Google App Password token) from the `./backend/.env` file. |
| * Captures registration details and emails a 6-digit OTP code to the registered email address. |
| * **Frontend (`./frontend`)**: |
| * Runs on port `5173`. |
| * Redirects users to the `/verify-email` screen after registration to enter their OTP. |
| * Connects directly to the backend at `http://localhost:8000` to process validations. |
| * **Docker Network & Persistence**: |
| * Docker Compose runs both components in a single network. |
| * The SQLite database is saved on your computer at `./backend/users.db` so accounts are kept safe. |
|
|
| --- |
|
|
| ## 3. How to Start and Stop |
| To run the entire project, execute this command in your terminal: |
| ```bash |
| docker compose up --build |
| ``` |
|
|
| To stop the project, press `CTRL + C` or run: |
| ```bash |
| docker compose down |
| ``` |
|
|