Я не могу запустить мой проект django с использованием whitenoise и сжатых статических файлов (включая libsass). В ссылках ниже я читал, что это возможно только при автономном сжатии необходимых статических файлов. Но когда я запустил Docker-контейнер, при выполнении команды compress
docker-compose -f production.yml run --rm django python manage.py compress
выдается ошибка:
ValueError: Missing staticfiles manifest entry for 'sass/app.scss'
При попытке запросить сайт выдает следующую ошибку (как и ожидалось? ):
compressor.exceptions.OfflineGenerationError: You have offline compression enabled but key "..." is missing from offline manifest. You may need to run "python manage.py compress"
Настройки следующие (сборка с cookiecutter-django, см. Ссылку для полной базы кода ниже):
STATIC_ROOT = str(ROOT_DIR("staticfiles"))
STATIC_URL = "/static/"
STATICFILES_DIRS = [str(APPS_DIR.path("static"))]
STATICFILES_FINDERS = [
"django.contrib.staticfiles.finders.FileSystemFinder",
"django.contrib.staticfiles.finders.AppDirectoriesFinder",
]
STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage"
STATICFILES_FINDERS += ["compressor.finders.CompressorFinder"]
COMPRESS_PRECOMPILERS = [("text/x-scss", "django_libsass.SassCompiler")]
COMPRESS_CACHEABLE_PRECOMPILERS = (("text/x-scss", "django_libsass.SassCompiler"),)
COMPRESS_ENABLED = env.bool("COMPRESS_ENABLED", default=True)
COMPRESS_STORAGE = "compressor.storage.GzipCompressorFileStorage"
COMPRESS_ROOT = STATIC_ROOT
COMPRESS_URL = STATIC_URL
COMPRESS_OFFLINE = True
Итак, после поиска в Интернете в течение 1 дня;Я застрял ... Спасибо за любую помощь или предложение!
База кода: https://github.com/rl-institut/E_Metrobus/tree/compress
, которая построена с cookiecutter-django-foundation
включая следующие изменения в config/setttings/production.py
:
COMPRESS_STORAGE = "compressor.storage.GzipCompressorFileStorage" # Instead of pre-set "storages.backends.s3boto3.S3Boto3Storage"
COMPRESS_ROOT = STATIC_ROOT # Just in case
COMPRESS_OFFLINE = True # Needed to run compress offline
Возможные связанные ссылки: