mirror of
https://github.com/kasmtech/KasmVNC.git
synced 2024-11-21 23:53:24 +01:00
63 lines
2.1 KiB
Docker
63 lines
2.1 KiB
Docker
|
FROM ubuntu:18.04
|
||
|
|
||
|
ENV DISPLAY=:1 \
|
||
|
VNC_PORT=8443 \
|
||
|
VNC_RESOLUTION=1280x720 \
|
||
|
MAX_FRAME_RATE=24 \
|
||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||
|
HOME=/home/user \
|
||
|
TERM=xterm \
|
||
|
STARTUPDIR=/dockerstartup \
|
||
|
INST_SCRIPTS=/dockerstartup/install \
|
||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||
|
DEBIAN_FRONTEND=noninteractive \
|
||
|
VNC_COL_DEPTH=24 \
|
||
|
VNC_RESOLUTION=1280x1024 \
|
||
|
VNC_PW=vncpassword \
|
||
|
VNC_USER=user \
|
||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||
|
OMP_WAIT_POLICY=PASSIVE \
|
||
|
SHELL=/bin/bash \
|
||
|
SINGLE_APPLICATION=1
|
||
|
|
||
|
EXPOSE $VNC_PORT
|
||
|
|
||
|
WORKDIR $HOME
|
||
|
|
||
|
### REQUIRED STUFF ###
|
||
|
|
||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext libjpeg-dev wget
|
||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||
|
|
||
|
RUN mkdir -p $STARTUPDIR
|
||
|
COPY src/startup/ $STARTUPDIR
|
||
|
RUN mkdir -p $HOME/.config/xfce4/xfconf/xfce-perchannel-xml
|
||
|
COPY src/xfce/ $HOME/.config/xfce4/xfconf/xfce-perchannel-xml
|
||
|
# overwite default with single app config
|
||
|
RUN mv $HOME/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop-single-app.xml $HOME/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
|
||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||
|
|
||
|
# KasmVNC install
|
||
|
RUN wget -qO- https://github.com/kasmtech/KasmVNC/releases/download/v0.9.1-beta/KasmVNC_0.9.1-beta_Ubuntu_18.04.tar.gz | tar xz --strip 1 -C /
|
||
|
|
||
|
### START CUSTOM STUFF ####
|
||
|
|
||
|
# We need the server to use a fixed resulution and have the client scale, which is not the default behavior of KasmVNC
|
||
|
RUN sed -i "s#UI.initSetting('resize', 'remote');#UI.initSetting('resize', 'scale');#" /usr/local/share/kasmvnc/www/app/ui.js
|
||
|
|
||
|
RUN apt-get install -y chocolate-doom doom-wad-shareware prboom-plus freedoom
|
||
|
|
||
|
# Use software rendering, comment this out if you have a GPU
|
||
|
#RUN mkdir -p $HOME/.local/share/chocolate-doom && \
|
||
|
# echo 'force_software_renderer 1' > $HOME/.local/share/chocolate-doom/chocolate-doom.cfg
|
||
|
|
||
|
|
||
|
### END CUSTOM STUFF ###
|
||
|
|
||
|
RUN chown -R 1000:0 $HOME
|
||
|
USER 1000
|
||
|
WORKDIR $HOME
|
||
|
|
||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh", "xfce4-terminal", "-e", "/usr/games/chocolate-doom" ]
|