Python: Gestión de variables de entorno
Esta documentación forma parte de la guía Creación de una API REST. Consulte la guía completa aquí: Cómo crear una API REST usando Flask.
👋 ¡Bienvenido a la documentación de Stackhero!
Stackhero ofrece una solución nube de Python lista para usar que proporciona una serie de beneficios, incluyendo:
- Despliegue su aplicación en segundos con un simple
git push.- Use su propio nombre de dominio y benefíciese de la configuración automática de certificados HTTPS para una mayor seguridad.
- Disfrute de la tranquilidad con copias de seguridad automáticas, actualizaciones con un clic, y precios sencillos, transparentes y predecibles.
- Obtenga un rendimiento óptimo y una seguridad robusta gracias a una VM privada y dedicada.
Ahorre tiempo y simplifique su vida: solo toma 5 minutos probar la solución de alojamiento en la nube de Python de Stackhero.
Las variables de entorno son vitales para proteger información sensible, como credenciales de bases de datos o claves API. Hay dos beneficios principales al usar variables de entorno:
- Sus secretos no se almacenan en su repositorio Git, asegurando que personas no autorizadas no puedan acceder a sus datos sensibles incluso si acceden a su código fuente.
- Puede usar diferentes credenciales para diferentes entornos (por ejemplo, producción frente a desarrollo).
Para gestionar las variables de entorno, usamos el módulo python-dotenv. Primero, instálelo si aún no lo ha hecho:
pip install python-dotenv
pip freeze > requirements.txt
A continuación, cree un archivo .env en la raíz de su proyecto y agregue sus variables de entorno de desarrollo. Por ejemplo:
ENV="development"
DATABASE_PASSWORD="secretPassword"
THIRD_API_PRIVATE_KEY="secretKey"
Finalmente, agregue el archivo .env a su .gitignore para mantener la seguridad:
echo ".env" >> .gitignore
Para acceder a estas variables de entorno en Python, simplemente use os.environ.get():
import os
print(os.environ.get('ENV'))
El archivo
.envse usa solo para el entorno de desarrollo. Para staging o producción, configure las variables de entorno en el panel de Stackhero en la configuración de su servicio Python.