Cómo usar las variables de entorno para diferente ambientes
Clase 38 de 43 • Curso de Express.js 2018
Ya vimos cómo en nuestro ambiente local podemos hacer uso de las variables de entorno usando el archivo .env y la libreria dotenv. Generalmente lo que se recomienda es usar el mismo para los diferentes ambientes como Staging (Pruebas) y Producción.
Para ello se debe acceder al servidor remoto:
- Duplicar el archivo
.env.exampley renombrarlo por.env. - Cargar las respectivos valores de las variables de entorno.
- Usar valores y servicios diferentes para cada ambiente, esto quiere decir que las credenciales de desarrollo, staging y producción deben ser completamente diferentes.
- Si se quiere tener un backup de estos valores se recomienda usar las notas seguras de aplicaciones como 1Password o LastPass.
Como lo hemos dicho antes, no se debe hacer commit del archivo .env y este debe estar en el .gitignore, ademas se recomienda manejar solo un archivo .env. Más información: https://github.com/motdotla/dotenv#faq
Cuando no es posible acceder al servidor remoto
Algunos servicios como Heroku o Now no nos permiten acceder a un servidor remoto pues la administración del servidor es controlada por los mismos servicios, sin embargo cada servicio tiene sus mecanismos para establecer las variables de entorno:
Variables de entorno de forma nativa
El uso del archivo .env junto con la librería dotenv es un mecanismo que nos facilita la configuración de variables de entorno pero si por alguna razón las quisiéramos cargar de manera nativa, es decir desde el sistema operativo, recomiendo este tutorial de Digital Ocean