This repository contains a fully Dockerized web application featuring a Python-based backend using Flask and a modern frontend built with Next.js. The setup ensures a seamless development and deployment experience, leveraging the power of Docker for containerization.
- Project Structure
- Features
- Prerequisites
- Getting Started
- Docker Setup
- Environment Variables
- Database
- Contributing
- License
.
├── backend
│ ├── flask.dockerfile
│ ├── app.py
│ └── ...
├── frontend
│ ├── next.dockerfile
│ ├── pages
│ └── ...
├── docker-compose.yml
└── README.md
Next.js Frontend: A modern React framework for building fast and user-friendly web applications. Flask Backend: A lightweight Python web framework for building robust APIs. PostgreSQL Database: An open-source relational database for data storage. Docker: Containerization for easy deployment and consistent environments.
Ensure you have the following installed on your machine:
Docker Docker Compose
Clone the repository:
git clone https://github.com/your-username/your-repo-name.git
cd your-repo-nameStart the application using Docker Compose:
docker-compose up --buildThis will build and start all the services defined in the docker-compose.yml file.
Ensure to configure the following environment variables:
- NEXT_PUBLIC_API_URL: The URL for the API (Next.js frontend).
- DATABASE_URL: The connection string for the PostgreSQL database (Flask backend).
The application uses PostgreSQL as the database. The database service is defined in the docker-compose.yml file and configured with default credentials.
Contributions are welcome! Please fork this repository and submit a pull request for any improvements.
This project is licensed under the MIT License. See the LICENSE file for details.