From 0738c53040e877fc77bd65ec5e7eca50043e4784 Mon Sep 17 00:00:00 2001 From: Aleksandr Meshchriakov Date: Wed, 18 Feb 2026 17:14:01 +0100 Subject: [PATCH] =?UTF-8?q?Docker=20startup:=20=D0=BF=D0=BE=D0=B4=D0=B4?= =?UTF-8?q?=D0=B5=D1=80=D0=B6=D0=BA=D0=B0=20legacy=20DJANGO=5FSETTINGS=5FM?= =?UTF-8?q?ODULE=20config.settings.*?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Нормализация config.settings.* -> settings.* во всех entrypoint-скриптах - Устраняет ModuleNotFoundError: No module named 'config' при старте в Dokploy --- docker/scripts/check-deps.sh | 12 ++++++++++++ docker/scripts/migrate.sh | 12 ++++++++++++ docker/scripts/start-celery-beat.sh | 12 ++++++++++++ docker/scripts/start-celery-worker.sh | 12 ++++++++++++ docker/scripts/start-web-dev.sh | 12 ++++++++++++ docker/scripts/start-web.sh | 12 ++++++++++++ 6 files changed, 72 insertions(+) diff --git a/docker/scripts/check-deps.sh b/docker/scripts/check-deps.sh index bbdb132..0fd50ff 100755 --- a/docker/scripts/check-deps.sh +++ b/docker/scripts/check-deps.sh @@ -4,6 +4,18 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.dev}" export STARTUP_COMPONENT="${STARTUP_COMPONENT:-container}" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + python - <<'PY' import os diff --git a/docker/scripts/migrate.sh b/docker/scripts/migrate.sh index c9d3006..af57db2 100755 --- a/docker/scripts/migrate.sh +++ b/docker/scripts/migrate.sh @@ -4,6 +4,18 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.dev}" export STARTUP_COMPONENT="migrate" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + /app/docker/scripts/check-deps.sh python src/manage.py migrate --noinput diff --git a/docker/scripts/start-celery-beat.sh b/docker/scripts/start-celery-beat.sh index 5b52f6b..55484fe 100755 --- a/docker/scripts/start-celery-beat.sh +++ b/docker/scripts/start-celery-beat.sh @@ -3,6 +3,18 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.production}" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + exec celery -A core beat \ --loglevel="${CELERY_LOG_LEVEL:-INFO}" \ --scheduler django_celery_beat.schedulers:DatabaseScheduler diff --git a/docker/scripts/start-celery-worker.sh b/docker/scripts/start-celery-worker.sh index 367ea24..757bdab 100755 --- a/docker/scripts/start-celery-worker.sh +++ b/docker/scripts/start-celery-worker.sh @@ -3,6 +3,18 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.production}" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + exec celery -A core worker \ --loglevel="${CELERY_LOG_LEVEL:-INFO}" \ --concurrency="${CELERY_WORKER_CONCURRENCY:-2}" diff --git a/docker/scripts/start-web-dev.sh b/docker/scripts/start-web-dev.sh index fde9d77..c11eff1 100755 --- a/docker/scripts/start-web-dev.sh +++ b/docker/scripts/start-web-dev.sh @@ -3,4 +3,16 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.dev}" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + exec python src/manage.py runserver "0.0.0.0:${PORT:-8000}" diff --git a/docker/scripts/start-web.sh b/docker/scripts/start-web.sh index 197215d..32a1daf 100755 --- a/docker/scripts/start-web.sh +++ b/docker/scripts/start-web.sh @@ -4,6 +4,18 @@ set -eu export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-settings.production}" export STARTUP_COMPONENT="${STARTUP_COMPONENT:-web}" +case "${DJANGO_SETTINGS_MODULE}" in + config.settings.development|config.settings.dev) + export DJANGO_SETTINGS_MODULE="settings.dev" + ;; + config.settings.production) + export DJANGO_SETTINGS_MODULE="settings.production" + ;; + config.settings.test) + export DJANGO_SETTINGS_MODULE="settings.test" + ;; +esac + /app/docker/scripts/check-deps.sh python src/manage.py migrate --noinput