Django Docker: конвертировать видео после загрузки - PullRequest
0 голосов
/ 11 мая 2019

Я запускаю Django-Backend, используя Docker.Я хочу загрузить большие видео .mkv в серверную, но конвертировать и сохранить их как .mp4

Как мне поступить?Поскольку в конечном итоге это будет выполняться в кластере kubernetes, я должен порождать экземпляры Docker-worker, которые выполняют эту работу?

Обычно я просто запускаю

ffmpeg -i input.mkv -codec copy output.mp4

через os-модуль pythons, но я не надеваюне хочу перегружать контейнер django.

Для загрузки видео .mkv я использую следующее:

models.py

class Record(models.Model):
    name = models.CharField(max_length=255)
...
    video = models.FileField(null=True, upload_to='uploads/')

serializers.py

class VideoSerializer(serializers.ModelSerializer):
    class Meta:
        model = Record
        fields = ('id', 'video')
read_only_fields = ('id',)

views.py

...
@action(methods=['POST'], detail=True, url_path='upload-video')
def upload(self, request, pk=None):
    record = self.get_object()
    serializer = self.get_serializer(
        record,
        data=request.data
    )

    serializer.save()
    return Response(serializer.data,status=status.HTTP_200_OK)
)
...