From f67f042c3bdcfed88a0927d43c0dec96ddefdc06 Mon Sep 17 00:00:00 2001 From: Tatiana Villa Ema Date: Wed, 6 May 2026 23:00:09 +0200 Subject: [PATCH] solucionando conexion a la base de datos --- .env.example | 3 +++ .gitignore | 5 +++++ Dockerfile | 15 +++++++++++++++ pom.xml | 1 + src/main/resources/application.properties | 15 +++++++-------- src/main/resources/static/css/style.css | 4 ++-- 6 files changed, 33 insertions(+), 10 deletions(-) create mode 100644 .env.example create mode 100644 Dockerfile diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..4cc9f54 --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +DB_PASS=Eavne,e1m +STRIPE_SECRET_KEY=sk_test_PON_TU_NUEVA_CLAVE_AQUI +STRIPE_WEBHOOK_SECRET=whsec_PON_TU_NUEVO_SECRET_AQUI diff --git a/.gitignore b/.gitignore index 667aaef..63a625a 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,11 @@ target/ !**/src/main/**/target/ !**/src/test/**/target/ +### Credenciales (nunca subir al repo) ### +.env +*.env +application-local.properties + ### STS ### .apt_generated .classpath diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4257877 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +# ── Fase 1: compilar ──────────────────────────────────────────── +FROM eclipse-temurin:21-jdk-alpine AS build +WORKDIR /app +COPY .mvn/ .mvn/ +COPY mvnw pom.xml ./ +RUN ./mvnw dependency:go-offline -q +COPY src ./src +RUN ./mvnw clean package -DskipTests -q + +# ── Fase 2: imagen final (solo JRE) ───────────────────────────── +FROM eclipse-temurin:21-jre-alpine +WORKDIR /app +COPY --from=build /app/target/*.jar app.jar +EXPOSE 8081 +ENTRYPOINT ["java", "-jar", "app.jar"] diff --git a/pom.xml b/pom.xml index bc1ebc8..0c8568e 100644 --- a/pom.xml +++ b/pom.xml @@ -55,6 +55,7 @@ com.mysql mysql-connector-j + 8.3.0 runtime diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index d856787..710b87a 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,10 +1,10 @@ spring.application.name=taiage server.port=8081 -# ── Base de datos MySQL ───────────────────────────────────────── -spring.datasource.url=jdbc:mysql://localhost:3306/taiage?createDatabaseIfNotExist=true&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Europe/Madrid -spring.datasource.username=root -spring.datasource.password=Eavne,e1m +# ── Base de datos ─────────────────────────────────────────────── +spring.datasource.url=${DB_URL:jdbc:mysql://localhost:3306/taiage?createDatabaseIfNotExist=true&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Europe/Madrid} +spring.datasource.username=${DB_USER:root} +spring.datasource.password=${DB_PASS} spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # ── JPA / Hibernate ───────────────────────────────────────────── @@ -16,8 +16,7 @@ spring.jpa.open-in-view=false spring.thymeleaf.cache=false # ── Stripe ────────────────────────────────────────────────────── -# Sustituye estos valores por los de tu cuenta en dashboard.stripe.com -stripe.secret-key=pk_live_51PDO7CH8SX3oYZHa9viPsZl5qxTxGQkyFw1uoiOqJCiPemxAWPbzTt0Rd3FFBx4vSJlkK7vNP7GV5XKxooMI6Bkc00cVk3lUOL -stripe.webhook-secret=whsec_MkJcSnVYRXrTXzFR45hwuBaGTs59A3iv -stripe.price-amount=2900 +stripe.secret-key=${STRIPE_SECRET_KEY} +stripe.webhook-secret=${STRIPE_WEBHOOK_SECRET} +stripe.price-amount=${STRIPE_PRICE_AMOUNT:2900} stripe.currency=eur diff --git a/src/main/resources/static/css/style.css b/src/main/resources/static/css/style.css index 80f2351..6fb1e57 100644 --- a/src/main/resources/static/css/style.css +++ b/src/main/resources/static/css/style.css @@ -1152,7 +1152,7 @@ a:hover { text-decoration: underline; } border-radius: 8px; text-decoration: none; text-align: center; - transition: border-color .13s, background .13s; + transition: border-color .13s, background-color .13s; } .ccaa-card:hover { border-color: var(--accent); @@ -1213,7 +1213,7 @@ a:hover { text-decoration: underline; } font-size: 1rem; padding: .25rem .4rem; border-radius: 4px; - transition: color .15s, background .15s; + transition: color .15s, background-color .15s; flex-shrink: 0; } .inap-banner-close:hover { color: var(--fg); background: color-mix(in srgb, var(--fg) 10%, transparent); }