Dockerfile中设置环境变量
FROM xxxxxxxxx
ENV PORT_TO_EXPOSE=30000 devops_env=pro
在setting.py中添加
# config
ENVIRONMENT = os.environ.get('devops_env', 'dev') #获取环境变量 devops_env,默认值是dev
conf_module = "devops.settings.settings_%s" % ENVIRONMENT
APP_NAME = 'xxxxxxx'
try:
module = __import__(conf_module, globals(), locals(), ['*'])
except ImportError as e:
raise ImportError("Could not import conf '%s' (Is it on sys.path?): %s" % (conf_module, e))
for setting in dir(module):
locals()[setting] = getattr(module, setting)
增加settings_dev.py 和settings_pro.py
settings_dev.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'demo_dev',
'USER': 'root',
'PASSWORD': 'root123',
'HOST': '1.1.1.1',
'PORT': '3306',
}
}
settings_pro.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'demo_pro',
'USER': 'root',
'PASSWORD': 'root123',
'HOST': '1.1.1.1',
'PORT': '3306',
}
}