La lecture dans les variables d'environnement à partir d'un fichier d'environnement
Je voudrais dans un environnement local d'un script Python qui est normalement exécutée dans un conteneur Docker. Le docker-compose.yml
spécifie un env_file qui regarde (partiellement) comme suit:
DB_ADDR=rethinkdb
DB_PORT=28015
DB_NAME=ipercron
Afin d'exécuter ce local, je voudrais ces lignes pour être converti à
os.environ['DB_ADDR'] = 'rethinkdb'
os.environ['DB_PORT'] = '28015'
os.environ['DB_NAME'] = 'ipercron'
Je pourrais écrire mon parser, mais je me demandais si il existe des modules/outils de lire dans les variables d'environnement à partir des fichiers de configuration?
OriginalL'auteur Kurt Peek | 2016-10-24
Vous devez vous connecter pour publier un commentaire.
Prendre un coup d'oeil à la python-dotenv
Ne l'utilisez pas, elle massivement les sauts de lignes nouvelles, combine deux variables dans un, etc. La lecture est ok, mais "dotenv set" juste ne fonctionne pas à tous.
OriginalL'auteur table
Vous pouvez utiliser
ConfigParser
. Exemple d'échantillon peut être trouvé ici.Mais cette bibliothèque s'attend à ce que
key
=value
de données pour être présent dans certaines[heading]
. Par exemple, comme:OriginalL'auteur Moinuddin Quadri
En utilisant uniquement python std
OriginalL'auteur h0tw1r3
Cela pourrait aussi le travail pour vous:
Dans les commentaires, vous trouverez quelques-unes des différentes façons d'économiser de l'env de vars et également quelques options d'analyse c'est à dire à se débarrasser de leader
export
mot-clé. Un autre moyen serait d'utiliser la python-dotenv de la bibliothèque. Des acclamations.OriginalL'auteur radtek