Как установить "DJANGO_SETTINGS_MODULE" для модуля "config", разделенного на общие, локальные, производственные файлы

Я настраиваю wsgi.py для развертывания моего приложения django в DigitalOcean, но я получаю следующие ошибки на этапе развертывания после успешной сборки. Судя по трассировке ошибок, я думаю, что проблема в os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config") этой строке внутри wsgi.py.

Мои файлы конфигурации организованы как модуль python с общими, локальными и производственными настройками. Я не уверен, где и как решить эту проблему, и я застрял здесь уже несколько дней. Буду признателен за любой вклад!

ТРАССИРОВКА ОШИБКИ

дерево файлов

monorepo/backend-server
├── Dockerfile
├── README.md
├── config
│   ├── __init__.py
│   ├── common.py
│   ├── local.py
│   └── production.py
├── docker-compose.yml
├── manage.py
├── requirements.txt
├── urls.py
├── wait_for_postgres.py
└── wsgi.py

wsgi.py

import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config")
os.environ.setdefault("DJANGO_CONFIGURATION", "Production")

# sys.path.append("/scraft-server")

from configurations.wsgi import get_wsgi_application  # noqa

application = get_wsgi_application()

config.common.py

import os
from os.path import join
from distutils.util import strtobool
from dotenv import load_dotenv
import datetime
import dj_database_url
from configurations import Configuration

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

load_dotenv()

class Common(Configuration):

    # settings

DockerFile

FROM python:3.8
ENV PYTHONUNBUFFERED 1

# Allows docker to cache installed dependencies between builds
COPY ./requirements.txt requirements.txt
RUN pip install -r requirements.txt

# Adds our application code to the image
WORKDIR /code/scraft-server
COPY scraft-server .  
WORKDIR /code

EXPOSE 8000

# Run the production server
CMD newrelic-admin run-program gunicorn --bind localhost:$PORT --access-logfile - scraft-server.wsgi:application

в вашем dockerfile, используйте переменную окружения, такую как

ENV DJANGO_SETTINGS_MODULE backend-server.config.production
Вернуться на верх