azosi · 2026.7.29 01:45 · 조회 1

Remotion Cloud Hosting

Lambda 외에 Vercel, Google Cloud Run, Azure Container Apps, Cloudflare Containers 등 다양한 클라우드에서 Remotion을 실행하는 옵션.


🌐 옵션 비교

옵션적합
VercelNext.js 앱과 함께, 빠른 통합
Google Cloud RunGCP 사용자에게 익숙, pay-per-use
Azure Container Apps엔터프라이즈·Microsoft Azure 환경
Cloudflare Containers글로벌 edge, 빠른 콜드 스타트
LambdaAWS 네이티브, 가장 검증된 옵션
자체 서버완전한 제어, 자체 인프라

▲ Vercel

Next.js 앱에서 직접 Remotion SSR 사용.

// app/api/render/route.ts
import { bundle } from "@remotion/bundler";
import { renderMedia, selectComposition } from "@remotion/renderer";
import { NextRequest } from "next/server";

export async function POST(req: NextRequest) {
  const { id } = await req.json();

  const bundleLocation = await bundle({
    entryPoint: "./remotion/index.ts",
  });

  const composition = await selectComposition({
    serveUrl: bundleLocation,
    id: "MyComposition",
    inputProps: { id },
  });

  const { buffer } = await renderMedia({
    composition,
    serveUrl: bundleLocation,
    inputProps: { id },
  });

  return new Response(buffer, {
    headers: { "Content-Type": "video/mp4" },
  });
}

Vercel Sandbox 패턴: https://www.remotion.dev/docs/vercel/sandbox


🌥️ Google Cloud Run

Docker 이미지로 패키징 후 Cloud Run에 배포.

FROM node:20-bookworm-slim
RUN apt-get update && apt-get install -y chromium ffmpeg
WORKDIR /app
COPY package*.json ./
RUN npm ci --omit=dev
COPY . .
CMD ["node", "server.js"]

server.js:

import express from "express";
import { bundle } from "@remotion/bundler";
import { renderMedia, selectComposition } from "@remotion/renderer";

const app = express();
const bundleLocation = await bundle({ entryPoint: "./src/index.ts" });

app.post("/render", async (req, res) => {
  const composition = await selectComposition({
    serveUrl: bundleLocation,
    id: req.body.id,
    inputProps: req.body,
  });
  const { buffer } = await renderMedia({
    composition,
    serveUrl: bundleLocation,
    inputProps: req.body,
  });
  res.set("Content-Type", "video/mp4").send(buffer);
});

app.listen(8080);

상세 가이드: https://www.remotion.dev/docs/cloudrun (단, unmaintained 표시)


☁️ Azure Container Apps

Azure의 컨테이너 기반 서버리스 플랫폼. Cloud Run과 유사한 패턴.

가이드: https://www.remotion.dev/docs/azure-container-apps


🌐 Cloudflare Containers

Cloudflare의 edge 컨테이너. 글로벌 분산, 빠른 콜드 스타트.

가이드: https://www.remotion.dev/docs/cloudflare-containers


🤔 선택 가이드

질문 1: 이미 AWS를 쓰고 있나?
   → Yes → Lambda
   → No  ↓

질문 2: Next.js 앱과 함께 통합?
   → Yes → Vercel
   → No  ↓

질문 3: 글로벌 edge가 필요한가?
   → Yes → Cloudflare Containers
   → No  ↓

질문 4: Microsoft / GCP 인프라인가?
   → Azure / Cloud Run

💰 비용 비교 (대략)

옵션1분 영상 1개
Vercel (Pro)함수 호출 수 기반
Cloud Run$0.00001600/vCPU-초
Lambda$0.00001667/GB-초
Cloudflare Containers워크로드 기반

📌 정확한 가격은 각 제공사 문서 확인


⚠️ 알아둘 점

  • Cold start — 모든 서버리스 옵션은 첫 호출 시 지연. 워밍업 권장
  • 메모리 — 최소 2GB RAM. 4K는 4GB+
  • Chromium — 컨테이너 환경에 chromium 또는 chrome 설치 필수
  • License — Remotion은 자체 License. 상업용 사용 시 License 가이드 확인

📚 영역 구분

  • AWS 환경: Remotion Lambda
  • 로컬 자동화: Remotion Server-side Rendering (SSR)
  • 브라우저에서: Remotion Client-side Rendering
  • 한글 hub: Remotion 렌더링

상위 문서: ← Remotion 렌더링 출처: Remotion 공식 문서 — Cloud Hosting (Vercel / Cloud Run / Azure / Cloudflare) 한글화 (2026-07-29) 공급사: Remotion AG

변경 이력

날짜변경
2026-07-29초판 작성 (공식 Cloud Hosting 가이드 한글화)
2026-07-29메타데이터 블록을 본문 하단으로 이동

댓글

아직 댓글이 없습니다.

댓글을 작성하려면 로그인이 필요합니다.