Установка медиафайлов по умолчанию в Docker с помощью Django
Я развертываю свое веб-приложение Django с помощью Docker и Docker Compose, Nginx и Postgresql. Я уже выполнил развертывание, и оно работает хорошо. Но у меня проблема с медиафайлами по умолчанию.
Когда я развертывал локально и на своем сервере, я добавлял эти медиафайлы по умолчанию вручную в папку media, но теперь с Docker я не могу этого сделать
Одной из моих моделей будет эта, которая имеет изображение по умолчанию "dictionary/default.png" и, очевидно, когда я запускаю свой docker изображение не загружается, потому что оно нигде не существует.
class Dictionary(models.Model):
dictionary_name = models.CharField(max_length=200)
dictionary_picture = models.ImageField(upload_to='dictionary', default='dictionary/default.png')
Я думал иметь эти медиафайлы по умолчанию локально и скопировать их в папку Docker media в Dockerfile, но я не знаю, возможно ли это.
В Dockerfile есть инструкция COPY.
Например, скопируйте все файлы из dictionary
в media
:
...
COPY dictionary/ /app/media/
...
Если вы уже установили WORKDIR /app
:
...
COPY dictionary/ ./media/
...