# Configuración de conexión a base de datos para dtic-BITACORAs # ============================================================== # Este archivo define las conexiones a PostgreSQL para diferentes entornos. # Las credenciales por defecto corresponden al contenedor Docker definido en # dtic-BITACORAs/docker-compose.yml # ─── Entorno de desarrollo (contenedor Docker) ───────────────────── development: adapter: postgresql host: localhost port: 5433 database: dtic_bitacoras username: dtic_user password: dtic_pass_2026 encoding: utf8 pool: 5 timeout: 5000 schema_search_path: bitacoras # Opciones de conexión variables: statement_timeout: 15000 # 15 segundos # ─── Entorno de pruebas ─────────────────────────────────────────── test: adapter: postgresql host: localhost port: 5433 database: dtic_bitacoras_test username: dtic_user password: dtic_pass_2026 encoding: utf8 pool: 2 timeout: 3000 schema_search_path: bitacoras # Crear base de datos de prueba si no existe prepare_database: true # ─── Entorno de producción (variables de entorno) ──────────────── production: adapter: postgresql host: <%= ENV['DB_HOST'] || 'localhost' %> port: <%= ENV['DB_PORT'] || '5432' %> database: <%= ENV['DB_NAME'] || 'dtic_bitacoras' %> username: <%= ENV['DB_USER'] || 'dtic_user' %> password: <%= ENV['DB_PASSWORD'] || ENV['DB_PASS'] %> encoding: utf8 pool: <%= ENV['DB_POOL'] || 10 %> timeout: <%= ENV['DB_TIMEOUT'] || 10000 %> schema_search_path: bitacoras # SSL para conexiones seguras en producción sslmode: <%= ENV['DB_SSLMODE'] || 'prefer' %> # ─── Configuraciones especiales ────────────────────────────────── # Para uso en scripts de migración y mantenimiento migration: adapter: postgresql host: localhost port: 5433 database: dtic_bitacoras username: dtic_user password: dtic_pass_2026 encoding: utf8 pool: 1 timeout: 30000 schema_search_path: bitacoras # ─── Notas de uso ──────────────────────────────────────────────── # 1. El puerto 5433 es el mapeo externo del contenedor Docker (5432 interno) # 2. Todas las tablas están en el esquema 'bitacoras' # 3. En producción, siempre usar variables de entorno para credenciales # 4. Para probar la conexión: # ruby -r "pg" -e "PG.connect(host: 'localhost', port: 5433, dbname: 'dtic_bitacoras', user: 'dtic_user', password: 'dtic_pass_2026') { |conn| puts 'Conexión exitosa' }"