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.
|
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
||||||
.idea/
|
.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