03 – Configurar PostgreSQL como base de datos
Descripción
Levantar PostgreSQL 16 local con Docker y conectarlo al proyecto Spring Boot leyendo credenciales desde variables de entorno.
Owner sugerido: Dev A | Branch: chore/setup-postgresql | Depende de: #2 (closed)
Tareas
-
Crear docker-compose.ymlcon serviciopostgres:16-alpine, volumen persistente y healthcheck. -
Crear .env.exampleconDB_URL,DB_USER,DB_PASSWORD(vacíos). -
Agregar .enval.gitignore(nunca commitear credenciales). -
Configurar spring.datasource.*enapplication.ymlleyendo desde${DB_URL},${DB_USER},${DB_PASSWORD}. -
Documentar en README: cp .env.example .env,docker compose up -d,./mvnw spring-boot:run. -
Verificar: log HikariPool-1 - Start completedal arrancar.
Commits sugeridos
chore(db): agregar docker-compose con postgres 16
chore(config): leer credenciales de postgres desde env vars
docs(readme): documentar levantado de la base con docker
chore(git): ignorar archivo .env
Criterios de aceptación
-
docker compose up -ddeja Postgres en:5432. -
App conecta sin errores al arrancar. -
No hay credenciales hardcodeadas en el código ni en application.yml. -
Solo .env.exampleestá versionado.
Referencia del curso: Módulo 2 – PDFs 6, 7 (Spring Data JPA con PostgreSQL, JPA con Hibernate)