🔐 Variables de entorno
CORDIA utiliza archivos .env para definir variables de entorno en cada entorno de ejecución (local, preproducción, producción). Estas variables permiten configurar el comportamiento de Laravel, los servicios Docker y herramientas auxiliares sin modificar el código fuente.
📁 Archivos .env
.env.example: plantilla base con todas las variables comunes..env: archivo principal que debe personalizarse en cada entorno..env.dev,.env.prod, etc.: usados según el entorno o por scripts automatizados.
🔧 Variables más relevantes
| Variable | Descripción |
|---|---|
APP_NAME |
Nombre de la aplicación |
APP_ENV |
Entorno de ejecución (dev, test, pre, prod) |
APP_URL |
URL base del sistema |
DB_HOST, DB_PORT |
Dirección e IP del servicio MySQL |
DB_DATABASE |
Nombre de la base de datos |
DB_USERNAME, DB_PASSWORD |
Credenciales de acceso al motor de base de datos |
JWT_SECRET |
Clave secreta para generación de tokens JWT |
LOG_CHANNEL |
Canal de log principal (por ejemplo, stack, daily, stderr, etc.) |
FILESYSTEM_DISK |
Configuración de almacenamiento (local, public, s3, etc.) |
FILAMENT_DOMAIN |
Dominio del panel de administración (por defecto panel.cordia.local) |
🐳 Integración con Docker
Los valores definidos en .env.<entorno> se cargan con Docker Compose al levantar servicios.
- Los scripts
run.shyrun-service.shusanAPP_ENVpara seleccionar.env.<entorno>. run-service.shcopia.env.<entorno>aapp/api-laravel/.envy ejecutadocker composecon--env-filey losdocker-compose.<entorno>.ymlsi existen.
Si cambias variables clave como la base de datos, debes reiniciar los contenedores.
✅ Buenas prácticas
- Nunca subir archivos
.enval repositorio (ya está en.gitignore). - Personalizar
.envtras clonar el proyecto usando.env.examplecomo base. - No compartir
.envcompletos fuera del equipo técnico. - Verificar que
APP_ENV=productionesté definido correctamente en servidores reales.
Consulta los scripts de despliegue o los
docker-composepara ver cómo se cargan automáticamente las variables según el entorno.