Работа со статическими файлами и venv во время развертывания на AWS EB
У меня в проекте Django статические файлы настроены следующим образом:
STATIC_ROOT = BASE_DIR / 'static'
STATICFILES_DIRS = [(BASE_DIR / 'staticfiles'), ]
Я добавляю static
к .gitignore
, таким образом я помещаю свои файлы в папку staticfiles
и загружаю их в git. А на сервере развертывания я запускаю collectstatic
, чтобы переместить их в папку static
. Это работало нормально, пока я не решил перенести проект на AWS EB. Поскольку мне приходится запускать collectstatic
перед eb deploy
, он игнорирует папку static
во время развертывания (поскольку она находится в .gitignore
). Решением, которое я использовал раньше, было добавление .ebignore
с staticfiles
в ней вместо static
. Только с этим проектом возникает ошибка:
An error occurred during execution of command [app-deploy] - [StageApplication]. Stop running the command. Error: chown /var/app/staging/ve/lib64: no such file or directory
Из того, что я прочитал, это как-то связано с simlinks в aws cli, которые были созданы для моей папки venv ve
. Но я не могу найти решение этой проблемы. Поэтому у меня два вопроса:
- Каким образом правильно работать со статическими файлами в Django?
- Как удалить папку venv из eb?