linux / Dockerfile
Dinnerbone5443's picture
fixing the password bullshit again
455e0f1 verified
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
xfce4 xfce4-goodies \
tightvncserver \
xfonts-base \
novnc websockify \
curl wget git python3 \
sudo net-tools iputils-ping \
&& apt-get clean
RUN ln -s /usr/share/novnc/vnc.html /usr/share/novnc/index.html
RUN useradd -m -u 1000 user
USER user
ENV USER=user
ENV HOME=/home/user
WORKDIR $HOME
RUN --mount=type=secret,id=VNC_PASS,mode=0444,required=true \
mkdir -p $HOME/.vnc && \
echo "$(cat /run/secrets/VNC_PASS)" | vncpasswd -f > $HOME/.vnc/passwd && \
chmod 600 $HOME/.vnc/passwd
RUN echo "#!/bin/sh\n\
xrdb \$HOME/.Xresources\n\
startxfce4 &" > $HOME/.vnc/xstartup && \
chmod +x $HOME/.vnc/xstartup
RUN echo "#!/bin/bash\n\
export USER=user\n\
export HOME=/home/user\n\
vncserver :1 -geometry 1366x768 -depth 24\n\
/usr/share/novnc/utils/launch.sh --vnc localhost:5901 --listen 7860" > $HOME/start.sh
RUN chmod +x $HOME/start.sh
EXPOSE 7860
CMD ["./start.sh"]