Skip to content

adrianescalada/react-mongodb-mysql

Repository files navigation

Docker + MongoDB + MySQL + React + Express Setup

🌟 Descripción

Sistema de gestión de usuarios con soporte para MongoDB y MySQL, utilizando Express y React dockerizado.

🚀 Puertos

📌 Endpoints API

Usuarios MongoDB

  • GET /api/mongo/users - Obtener todos los usuarios
  • POST /api/mongo/users - Crear nuevo usuario
  • DELETE /api/mongo/users/:id - Eliminar usuario por ID
  • PUT /api/mongo/users/:id - Actualizar usuario por ID

Usuarios MySQL

  • GET /api/mysql/users - Obtener todos los usuarios
  • POST /api/mysql/users - Crear nuevo usuario
  • DELETE /api/mysql/users/:id - Eliminar usuario por ID
  • PUT /api/mysql/users/:id - Actualizar usuario por ID

💾 Configuración Bases de Datos

MongoDB

  • Usuario: root
  • Base de datos: users_db
  • Puerto: 27018
  • URL de conexión: mongodb://root:example@mongodb:27017/users_db?authSource=admin

MySQL

  • Usuario: root
  • Base de datos: users_db
  • Puerto: 3306
  • Host: mysql

⚙️ Instalación y Configuración

  1. Clonar el repositorio:
git clone https://github.com/adrianescalada/react-mongodb-mysql
  1. Dar permisos y ejecutar el script de inicio:

    Para Linux:

  • chmod +x start-dev.sh
  • ./start-dev-linux.sh

Para Windows:

  • start-dev-win.ps1
  • start-dev-win.bat

Para Mac:

  • chmod +x start-dev-mac.sh ./start-dev-mac.sh

Backend

  • MONGO_URL=mongodb://root:example@mongodb:27017/users_db?authSource=admin
  • MYSQL_HOST=mysql
  • MYSQL_USER=root
  • MYSQL_PASSWORD=example
  • MYSQL_DATABASE=users_db
  • PORT=3008

Frontend

- PORT=3006
- REACT_APP_API_URL=http://localhost:3008

🔍 Características

Frontend

  • React 18
  • Sistema de gestión de usuarios
  • Interfaz responsive
  • Manejo de estados con React Hooks
  • Gestión de formularios
  • Mensajes de feedback
  • Estilos CSS modernos

Backend

  • Express 4
  • Soporte para MongoDB con Mongoose
  • Soporte para MySQL
  • CORS configurado
  • Manejo de errores
  • Validación de datos
  • Reintentos de conexión a bases de datos
  • Estructura de respuesta unificada para ambas bases de datos

Docker

  • Contenedores separados para cada servicio
  • Volúmenes persistentes para ambas bases de datos
  • Red docker personalizada
  • Variables de entorno configurables

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published