FROM node:18-bullseye-slim

# Install dependencies for Chromium and X11
RUN apt-get update && apt-get install -y \
    chromium \
    x11-xserver-utils \
    scrot \
    jq \
    curl \
    libpulse0 \
    alsa-utils \
    libgles2 \
    libegl1 \
    libgl1-mesa-dri \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY package.json package-lock.json* ./
RUN npm install

COPY server.js ./
COPY start.sh /start.sh
RUN chmod +x /start.sh

# Provide a default user data directory
RUN mkdir -p /data/chromium && chown -R node:node /data

CMD ["/start.sh"]
