This project uses Docker Compose to set up the following services: PostgreSQL, PGAdmin, PostgREST, API Gateway, Auth Service, GraphQL Service, and a React frontend.
-
PostgreSQL: Database service running PostgreSQL. It creates postgres-data inside your roo directory to persist data
-
PGAdmin: Web interface for managing PostgreSQL.
-
API Gateway: Routes requests to backend services (PostgREST, GraphQL, Express). Includes hot reload.
-
PostgREST: PostgREST provides a RESTful API interface to a PostgreSQL database. It allows direct access to your database through HTTP using the database's schema and roles.
-
Auth Service: Handles user authentication and JWT token management.
-
GraphQL Service: Exposes GraphQL API. Includes hot reload
-
Frontend: React frontend that interacts with the API Gateway. Includes hot reload
To build and start all services, use:
docker-compose up --buildstop and remove containers
docker-compose down -v