Resolve KASM-5854 "Feature/ ubuntu noble"
							parent
							
								
									b8763c5afd
								
							
						
					
					
						commit
						6eeb2445e8
					
				@ -0,0 +1,28 @@
 | 
			
		||||
FROM ubuntu:noble
 | 
			
		||||
 | 
			
		||||
ENV KASMVNC_BUILD_OS ubuntu
 | 
			
		||||
ENV KASMVNC_BUILD_OS_CODENAME noble
 | 
			
		||||
ENV XORG_VER 1.20.8
 | 
			
		||||
ENV DEBIAN_FRONTEND noninteractive
 | 
			
		||||
 | 
			
		||||
RUN sed -i 's$Types: deb$Types: deb deb-src$' /etc/apt/sources.list.d/ubuntu.sources
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && \
 | 
			
		||||
      apt-get -y install sudo
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get install -y --no-install-recommends tzdata
 | 
			
		||||
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
 | 
			
		||||
RUN apt-get update && apt-get -y install cmake git libgnutls28-dev vim wget curl
 | 
			
		||||
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
 | 
			
		||||
 | 
			
		||||
ENV SCRIPTS_DIR=/tmp/scripts
 | 
			
		||||
COPY builder/scripts $SCRIPTS_DIR
 | 
			
		||||
RUN $SCRIPTS_DIR/build-webp
 | 
			
		||||
RUN $SCRIPTS_DIR/build-libjpeg-turbo
 | 
			
		||||
 | 
			
		||||
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
 | 
			
		||||
 | 
			
		||||
COPY --chown=docker:docker . /src/
 | 
			
		||||
 | 
			
		||||
USER docker
 | 
			
		||||
ENTRYPOINT ["/src/builder/build.sh"]
 | 
			
		||||
@ -0,0 +1,19 @@
 | 
			
		||||
FROM ubuntu:noble
 | 
			
		||||
 | 
			
		||||
ENV DEBIAN_FRONTEND noninteractive
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && \
 | 
			
		||||
      apt-get -y install vim build-essential devscripts equivs
 | 
			
		||||
 | 
			
		||||
# Install build-deps for the package.
 | 
			
		||||
COPY ./debian/control /tmp
 | 
			
		||||
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
 | 
			
		||||
 | 
			
		||||
ARG L_UID
 | 
			
		||||
RUN if [ "$L_UID" -eq 0 ]; then \
 | 
			
		||||
      useradd -m docker; \
 | 
			
		||||
    else \
 | 
			
		||||
      useradd -m docker -u $L_UID;\
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
USER docker
 | 
			
		||||
@ -0,0 +1,57 @@
 | 
			
		||||
FROM ubuntu:noble
 | 
			
		||||
 | 
			
		||||
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=0 \
 | 
			
		||||
    KASMVNC_BUILD_OS=ubuntu \
 | 
			
		||||
    KASMVNC_BUILD_OS_CODENAME=noble
 | 
			
		||||
 | 
			
		||||
EXPOSE $VNC_PORT
 | 
			
		||||
 | 
			
		||||
WORKDIR $HOME
 | 
			
		||||
 | 
			
		||||
### REQUIRED STUFF ###
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
 | 
			
		||||
RUN apt-get purge -y pm-utils xscreensaver*
 | 
			
		||||
RUN apt-get update && apt-get install -y vim less
 | 
			
		||||
RUN apt-get update && apt-get -y install lsb-release
 | 
			
		||||
 | 
			
		||||
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
 | 
			
		||||
 | 
			
		||||
RUN mkdir -p $STARTUPDIR
 | 
			
		||||
COPY builder/startup/ $STARTUPDIR
 | 
			
		||||
 | 
			
		||||
### START CUSTOM STUFF ####
 | 
			
		||||
 | 
			
		||||
ARG KASMVNC_PACKAGE_DIR
 | 
			
		||||
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
 | 
			
		||||
RUN rm -f /tmp/kasmvncserver_*+*.deb; dpkg -i /tmp/*.deb; apt-get -yf install
 | 
			
		||||
 | 
			
		||||
RUN mkdir ~/.vnc && echo '/usr/bin/xfce4-session &' >> ~/.vnc/xstartup && \
 | 
			
		||||
  chmod +x ~/.vnc/xstartup
 | 
			
		||||
 | 
			
		||||
### END CUSTOM STUFF ###
 | 
			
		||||
 | 
			
		||||
RUN chown -R 1000:0 $HOME
 | 
			
		||||
USER 1000:ssl-cert
 | 
			
		||||
WORKDIR $HOME
 | 
			
		||||
 | 
			
		||||
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
 | 
			
		||||
@ -0,0 +1,51 @@
 | 
			
		||||
FROM ubuntu:noble
 | 
			
		||||
 | 
			
		||||
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=0 \
 | 
			
		||||
    KASMVNC_BUILD_OS=ubuntu \
 | 
			
		||||
    KASMVNC_BUILD_OS_CODENAME=noble
 | 
			
		||||
 | 
			
		||||
EXPOSE $VNC_PORT
 | 
			
		||||
 | 
			
		||||
WORKDIR $HOME
 | 
			
		||||
 | 
			
		||||
### REQUIRED STUFF ###
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
 | 
			
		||||
RUN apt-get purge -y pm-utils xscreensaver*
 | 
			
		||||
 | 
			
		||||
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
 | 
			
		||||
 | 
			
		||||
RUN mkdir -p $STARTUPDIR
 | 
			
		||||
COPY startup/ $STARTUPDIR
 | 
			
		||||
 | 
			
		||||
### START CUSTOM STUFF ####
 | 
			
		||||
 | 
			
		||||
COPY build/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz /tmp/
 | 
			
		||||
RUN tar -xzvf /tmp/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz --strip 1 -C /
 | 
			
		||||
 | 
			
		||||
### END CUSTOM STUFF ###
 | 
			
		||||
 | 
			
		||||
RUN chown -R 1000:0 $HOME
 | 
			
		||||
USER 1000
 | 
			
		||||
WORKDIR $HOME
 | 
			
		||||
 | 
			
		||||
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue