Docker中的Django单独的设置文件

时间:2019-01-22 11:35:25

标签: python django docker docker-compose

multiple articles around网络之后,我将Django 1.11 settings.py文件拆分为多个文件,base.pylocal.pystaging.pyproduction.py,放在settings文件夹中。

Django应用程序在Docker容器中运行。

docker-compose.yml

django:
    build:
      context: .
    env_file: .env
    command: ["/wait-for-it.sh", "mariadb:3306", "--", "/gunicorn.sh"]

Dockerfile中,我将DJANGO_SETTINGS_MODULE导出为local设置文件(依次导入base.py设置文件)。

Dockerfile

FROM python:3.6.4
RUN mkdir /app
ADD requirements/*.txt app/requirements/
RUN pip install -r mira/requirements/dev.txt
ADD . /app
RUN export DJANGO_SETTINGS_MODULE=app.settings.local
RUN export DJANGO_SECRET_KEY=dummy-secret-key
COPY ./docker/web/entrypoint.sh ./docker/web/gunicorn.sh ./docker/web/wait-for-it.sh ./docker/web/logging.conf ./scripts/setup.sh /
RUN chmod +x /entrypoint.sh /gunicorn.sh /wait-for-it.sh /setup.sh
WORKDIR ./app

settings / base.py

SECRET_KEY = os.environ['DJANGO_SECRET_KEY']

.env

DJANGO_SECRET_KEY=FOOBAR

当我尝试打开容器时,出现此错误:

  

SECRET_KEY设置不能为空。

0 个答案:

没有答案