feat: add libcap to Dockerfile and ensure Remotion browser binary is downloaded

This commit is contained in:
Michael committed 2026-03-24 13:49:43 +01:00
1 parent b15ba68b78
commit 297af0ab0d
2 files changed
+15 -2

No files matched your search

+6 -1
View File
@@ -31,7 +31,8 @@ RUN apk add --no-cache \
harfbuzz \
ca-certificates \
ttf-freefont \
ffmpeg
ffmpeg \
libcap
# Copier les fichiers de configuration
COPY package*.json ./
@@ -72,6 +73,10 @@ RUN rm -rf client/node_modules \
# Pré-bundler la composition Remotion pendant le build (speedup au premier rendu)
RUN node scripts/prebundle-remotion.js || true
# S'assurer que le binaire browser de Remotion est téléchargé et disponible
RUN npx remotion browser ensure
# Exposer le port de l'application
EXPOSE 5555
+9 -1
View File
@@ -170,13 +170,21 @@ remotionRouter.post("/render", upload.array("images", 4), async (req, res) => {
const outputLocation = path.join(uploadDir, outputFilename);
console.log("🎬 Rendering media...", effectiveDurationInFrames, "frames");
// Standard Chromium path on Alpine
const systemChromiumPath = "/usr/bin/chromium-browser";
const browserExecutable = fs.existsSync(systemChromiumPath) ? systemChromiumPath : undefined;
await renderMedia({
composition: { ...composition, durationInFrames: effectiveDurationInFrames },
serveUrl: bundleLocation,
codec: "h264",
outputLocation,
inputProps,
chromiumOptions: { disableWebSecurity: true }
browserExecutable,
chromiumOptions: {
disableWebSecurity: true,
}
});
console.log("✅ Render completed:", outputFilename);