python - django请教下各位,怎么管理生产环境和开发环境的配置
高洛峰
高洛峰 2017-04-18 09:15:41
0
3
458

目前想到两种方式管理配置文件:

1.写两个product_settings.py, development_setting.py, 然后写个build脚本,根据
jenkins 设置构建环境,不同的环境将不同的配置文件软连接或者cp成settings.py

2.线上环境用的是supervisor+gunicorn+nginx+django,gunicorn启东时,可以设置变量,
设置一个DJANGO_RUN_ENV变量,然后在settings.py中通过判断变量的值,更新不同的配置,
但是有一个默认的配置就是线上的。

不知道哪种方式更加合适一些,请大神分享下自己的配置文件管理方式,万分感谢。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(3)
阿神
settings
    --__init__.py
    --common.py
    --dev.py
    --uat.py
    --pro.py
     
common.py里面配置通用部分
dev.py、uat.py、pro.py里面配置开发、测试、生产环境不同的配置
__init__.py里面
from common import *
#from dev import *
#from uat import *
#from pro import *
巴扎黑

J'ai utilisé la première méthode

阿神

Généralement, les machines alpha, bêta ou de production des projets Python brosseront uniformément l'environnement requis pour exécuter le projet python (fait généralement référence à l'infrastructure : comme redis, mq, etc.), et vous pouvez spécialement brosser un environnement -fichier de configuration lié (Par exemple : /etc/google/env.yaml), précisez l'environnement auquel appartient la machine actuelle (alpah, beta, prod, etc.) dans ce fichier, puis vous pouvez mettre un champ :

env: alpha/beta/prod

Configurez ensuite un module dans votre projet Django pour lire le fichier de configuration de l'environnement machine.

Cette méthode peut paraître fastidieuse, mais elle est en réalité très efficace pour la gestion environnementale.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal