FROM node:20

# Install system dependencies including HandBrakeCLI
RUN apt-get update && apt-get install -y \
    handbrake-cli \
    && rm -rf /var/lib/apt/lists/*

# Install pnpm
RUN npm install -g pnpm

WORKDIR /app

# Copy package files
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json ./

# Copy app package files
COPY apps/web/package.json apps/web/
COPY apps/service/package.json apps/service/
COPY apps/docs/package.json apps/docs/
COPY apps/cli/package.json apps/cli/

# Copy packages
COPY packages/eslint-config/package.json packages/eslint-config/
COPY packages/typescript-config/package.json packages/typescript-config/
COPY packages/ui/package.json packages/ui/

# Install dependencies
RUN pnpm install --frozen-lockfile

# Copy source code
COPY . .

# Expose ports
EXPOSE 3000 3001 3002

# Default command
CMD ["pnpm", "dev"]