Este documento describe paso a paso cómo levantar el entorno de desarrollo de E-Bentos, trabajar colaborativamente mediante forks y pull requests, y manejar los contenedores con Docker Compose.
Antes de comenzar, asegúrate de tener instalado:
- Docker Desktop (Windows, macOS o Linux)
- Git
- MySQL (solo si usarás tu base de datos local en lugar del contenedor)
- IDE recomendado: VS Code, IntelliJ IDEA, o equivalente
-
Ingresa al repositorio principal:
👉https://github.com/ORG/e-bentos -
Haz clic en Fork (arriba a la derecha) para crear tu copia personal:
Esto generará:https://github.com/TU_USUARIO/e-bentos -
Clona tu fork localmente:
git clone https://github.com/TU_USUARIO/e-bentos.git cd e-bentos -
Crea una nueva rama de desarrollo:
git checkout -b feature/nombre-descriptivo
-
Realiza tus cambios, agrega y commitea:
git add . git commit -m "feat(frontend): agregar componente X"
-
Sube tu rama al fork:
git push origin feature/nombre-descriptivo
-
Desde GitHub, crea un Pull Request (PR) desde tu rama hacia la rama
developdel repositorio original.
💡 Sugerencia: para mantener tu fork actualizado con el repo principal:
git remote add upstream https://github.com/ORG/e-bentos.git git fetch upstream git merge upstream/develop
Crea la base de datos y el usuario:
CREATE DATABASE ebentos;
CREATE USER 'ebentos'@'%' IDENTIFIED BY 'losdibujitos';
GRANT ALL PRIVILEGES ON ebentos.* TO 'ebentos'@'%';
FLUSH PRIVILEGES;Verifica la conexión:
- Host: localhost
- Puerto: 3306 (o el que uses)
- Usuario: ebentos
- Contraseña: losdibujitos
- Base de datos: ebentos
En la raíz del repositorio, crea un archivo .env con el siguiente contenido (no se sube al repositorio, está en .gitignore):
MYSQL_ROOT_PASSWORD=root
MYSQL_DATABASE=ebentos
MYSQL_USER=ebentos
MYSQL_PASSWORD=losdibujitos
SPRING_DATASOURCE_URL=jdbc:mysql://mysql:3306/ebentos
SPRING_DATASOURCE_USERNAME=ebentos
SPRING_DATASOURCE_PASSWORD=losdibujitos
REACT_APP_API_URL=http://backend:8080SPRING_DATASOURCE_URLusa mysql como host, ya que Docker Compose conecta los contenedores por nombre de servicio.REACT_APP_API_URLapunta abackend:8080dentro de Docker. Si corres el frontend localmente, cámbialo ahttp://localhost:8080.
Desde la raíz del repositorio:
docker compose --env-file .env up --build- mysql → base de datos
- backend → aplicación Spring Boot
- frontend → aplicación React (Vite)
docker compose down # Detiene los contenedoresdocker compose down -v # Detiene y elimina volúmenes (resetea la BD)e-bentos/
├── backend/ # Spring Boot (Java)
│ ├── src/
│ └── Dockerfile
├── frontend/ # React + Vite
│ ├── src/
│ └── Dockerfile
├── docker-compose.yml
├── .env # Variables de entorno (local)
└── .gitignore
| Acción | Comando |
|---|---|
| Ver logs del backend | docker compose logs -f backend |
| Ver logs del frontend | docker compose logs -f frontend |
| Ver logs de MySQL | docker compose logs -f mysql |
| Reconstruir solo el backend | docker compose build backend |
| Reiniciar un servicio | docker compose restart backend |
- Crear ramas con prefijo
feature/,fix/ochore/según corresponda. - No hacer commits directos a
developnimain. - Antes de subir cambios, verifica que los contenedores corran correctamente con:
docker compose up --build
- Mantén actualizado el
.gitignore.
- Verifica que Docker Desktop esté ejecutándose.
- Consulta los logs con
docker compose logs -f. - Si todo falla, limpia y reconstruye:
docker compose down -v && docker compose up --build
✅ Con esto tendrás tu entorno de E-Bentos completamente funcional.
Cada desarrollador podrá levantar su entorno con un solo comando y contribuir mediante Pull Requests sin conflictos locales.