Куда класть 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 шт):
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