Fix: Resolver problemas de inicialización y seed de BD
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 1m4s
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 1m4s
Soluciones implementadas: 1. Copiar archivos SQL al contenedor Docker - Agregar COPY de server/database/ en Dockerfile - Permite que endpoint seed-database encuentre 02_seed.sql 2. Aumentar timeout de conexión PostgreSQL - connectionTimeoutMillis: 2000 -> 10000 (10 segundos) - Evita errores de autenticación en primera carga 3. Reducir logs en producción - Solo mostrar 'Nueva conexión' en desarrollo - Reduce ruido en logs de producción
This commit is contained in:
@@ -23,6 +23,9 @@ WORKDIR /app
|
||||
# Copy built application from builder stage
|
||||
COPY --from=builder /app/.output /app/.output
|
||||
|
||||
# Copy SQL files for seed endpoint
|
||||
COPY --from=builder /app/server/database /app/server/database
|
||||
|
||||
# Expose port
|
||||
EXPOSE 3000
|
||||
|
||||
|
||||
@@ -13,3 +13,7 @@ if ! grep -q "host all all all md5" "$PGDATA/pg_hba.conf"; then
|
||||
fi
|
||||
|
||||
echo "✓ Configuración de autenticación aplicada (md5)"
|
||||
|
||||
# Nota: No es necesario recargar aquí porque este script corre ANTES
|
||||
# de que PostgreSQL termine su inicialización. Los cambios se aplican
|
||||
# automáticamente cuando PostgreSQL termina de iniciarse.
|
||||
|
||||
@@ -18,7 +18,7 @@ export function getPool(): pg.Pool {
|
||||
port: parseInt(process.env.POSTGRES_PORT || '5432'),
|
||||
max: 20, // máximo de conexiones en el pool
|
||||
idleTimeoutMillis: 30000,
|
||||
connectionTimeoutMillis: 2000,
|
||||
connectionTimeoutMillis: 10000, // Aumentado a 10s para la primera conexión
|
||||
}
|
||||
|
||||
pool = new Pool(config)
|
||||
@@ -27,9 +27,12 @@ export function getPool(): pg.Pool {
|
||||
console.error('Error inesperado en el pool de PostgreSQL:', err)
|
||||
})
|
||||
|
||||
pool.on('connect', () => {
|
||||
console.log('Nueva conexión establecida con PostgreSQL')
|
||||
})
|
||||
// Solo log en desarrollo para reducir ruido
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
pool.on('connect', () => {
|
||||
console.log('Nueva conexión establecida con PostgreSQL')
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
return pool
|
||||
|
||||
Reference in New Issue
Block a user