The /playback transcode cache lives at /data/video-cache. That directory was created in container-local storage (the mkdir at services/video.py import time), not on a shared volume — so the worker pretranscode populated its own ephemeral copy while the backend served from a different empty one, and the cache evaporated on every container restart. Add a video_cache_data named volume mounted on backend, worker-light, and worker-vision so the pretranscoded files actually reach the serving path and survive deploys.
15 KiB
15 KiB