add: описание для media-каталога и .gitignore чтоб в него не пушилось.
This commit is contained in:
6
.gitignore
vendored
6
.gitignore
vendored
@@ -255,3 +255,9 @@ cython_debug/
|
||||
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
||||
.idea/
|
||||
|
||||
# Static / Media
|
||||
# public/static/ # Исходники статики нужны collectstatic
|
||||
# public/media # Медиа файлы НЕ нужны в образе, они монтируются как volume
|
||||
# Мы игнорируем содержимое папки public/media, но оставляем саму папку и README.md
|
||||
public/media/*
|
||||
!public/media/README.md
|
||||
|
||||
27
public/media/README.md
Normal file
27
public/media/README.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Папка для медиа-файлов (Media)
|
||||
|
||||
Эта директория предназначена для хранения загружаемого контента (изображений, документов), который генерируется или загружается пользователями в процессе работы Django-приложения.
|
||||
|
||||
## Как это работает с Docker
|
||||
|
||||
В `docker-compose.prod.yml` настроено монтирование этой папки как Docker Volume:
|
||||
|
||||
```yaml
|
||||
volumes:
|
||||
- ./media:/app/public/media
|
||||
```
|
||||
|
||||
* **На хосте (сервере):** Файлы физически хранятся в папке `media` рядом с `docker-compose.yml`.
|
||||
* **В контейнере:** Django видит их по пути `/app/public/media` (настройка `MEDIA_ROOT`).
|
||||
* **Nginx:** Внешний Nginx настроен на прямую отдачу файлов из этой папки хоста, минуя Django.
|
||||
|
||||
## Содержимое репозитория
|
||||
|
||||
В репозитории эта папка содержит только этот `README.md`.
|
||||
При развертывании контейнера через docker-compose (с volume `./media:/app/public/media`), содержимое этой папки на хосте становится доступным приложению.
|
||||
|
||||
**Автоматически создаваемые файлы:**
|
||||
При старте контейнера в этой папке автоматически создается каталог `errors/`, куда копируются статические HTML-файлы для отображения ошибок (404.html, 500.html), чтобы внешний Nginx мог их отдавать, даже если Django, gunicorn или весь контейнер недоступен.
|
||||
|
||||
> **Важно:** Убедитесь, что у пользователя, под которым работает Nginx (обычно `www-data`), есть права на чтение этой директории и файлов в ней.
|
||||
|
||||
Reference in New Issue
Block a user