docker-open-box-with-browse.../Dockerfile

54 lines
1.2 KiB
Docker

FROM alpine:3.21
ENV FIREFOX_HOMEPAGE="https://www.google.com" \
RDP_PASSWORD="changeme"
# Install packages
RUN apk add --no-cache \
openbox \
xrdp \
mesa-dri-gallium \
mesa-gl \
font-noto \
font-noto-emoji \
dbus \
firefox \
bash \
supervisor \
xterm \
x11vnc \
xset \
xvfb
# Create user
RUN adduser -D -s /bin/bash openbox && \
echo "openbox:${RDP_PASSWORD}" | chpasswd
# Configure XRDP - proxy mode to existing VNC session
COPY config/xrdp.ini /etc/xrdp/xrdp.ini
RUN mkdir -p /run/xrdp && \
chmod 0755 /run/xrdp
# OpenBox config
RUN mkdir -p /home/openbox/.config/openbox
COPY config/menu.xml /home/openbox/.config/openbox/menu.xml
COPY config/autostart.sh /home/openbox/.config/openbox/autostart
COPY config/rc.xml /home/openbox/.config/openbox/rc.xml
# Startup scripts
COPY scripts/start.sh /usr/local/bin/start.sh
COPY scripts/set-password.sh /usr/local/bin/set-password.sh
RUN chmod +x /home/openbox/.config/openbox/autostart && \
chmod +x /usr/local/bin/start.sh && \
chmod +x /usr/local/bin/set-password.sh && \
chown -R openbox:openbox /home/openbox
# Supervisor config
COPY config/supervisord.conf /etc/supervisord.conf
EXPOSE 3389 5900
CMD ["/usr/local/bin/start.sh"]