Куда класть media на хостинге Amvera Cloud?

У меня есть приложение на Django. Я решил развернуть его на хостинге Amvera. Вопрос в том, куда складывать media файлы? Ведь Django её не обслуживает. static можно раздавать с помощью whitenoise, но что делать с media? Я не нашел ответа в документации самого Amvera Cloud. Может помочь мой файл конфигурации (amvera.yml) :

meta:
  environment: python
  toolchain:
    name: pip
  version: 3.10
build:
  requirementsPath: requirements.txt
run:
  command: gunicorn borib.wsgi:application --bind 0.0.0.0:80
  persistenceMount: /data
  containerPort: 80

Вот, что у меня в settings.py :

STATIC_URL = '/static/'
STATICFILES_DIRS = []
STATICFILES_STORAGE = 'whitenoise.storage.CompressedStaticFilesStorage'
STATIC_ROOT = BASE_DIR / 'static/'

MEDIA_URL = '/media/'
MEDIA_ROOT = '/data/media'

Может кто то уже пользовался amvera cloud и разворачивал Django? Не понимаю куда девать media...


Ответы (1 шт):

Автор решения: Maxim

Media файлы можно обслуживать так же, как и Static. Сервер Django может как минимум обслуживать admin media

Вот пример settings.py (фрагмент):

MEDIA_ROOT = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'media')

MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/media/admin/'

и url.py (фрагмент):

if settings.DEBUG:
    from django.views.static import serve
    _media_url = settings.MEDIA_URL
    if _media_url.startswith('/'):
        _media_url = _media_url[1:]
        urlpatterns += patterns('',
            r'^%s(?P<path>.*)$' % _media_url, serve, 
            {'document_root': settings.MEDIA_ROOT}))
    del(_media_url, serve)

Также полезно почитать, там все более просто объяснено.

P.S. Дубликат https://qna.habr.com/q/1339766

→ Ссылка