FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive ENV DISPLAY=:1 # Install Scribus, VNC, noVNC, and a lightweight window manager RUN apt-get update && apt-get install -y --no-install-recommends \ scribus \ scribus-data \ tigervnc-standalone-server \ novnc \ websockify \ openbox \ xterm \ fonts-liberation \ fonts-dejavu \ fonts-noto \ fonts-noto-color-emoji \ dbus-x11 \ x11-utils \ procps \ curl \ && rm -rf /var/lib/apt/lists/* # Create app user RUN useradd -m -s /bin/bash designer # Create directories RUN mkdir -p /app/templates /app/output /app/rswag-designs \ && chown -R designer:designer /app # Copy startup script COPY studio/start.sh /start.sh COPY studio/openbox-rc.xml /home/designer/.config/openbox/rc.xml RUN chmod +x /start.sh && chown -R designer:designer /home/designer EXPOSE 6080 HEALTHCHECK --interval=30s --timeout=10s --retries=3 \ CMD curl -sf http://localhost:6080/ || exit 1 CMD ["/start.sh"]