From df422a225c671a1b0642618faf8f17dc89dbb20a Mon Sep 17 00:00:00 2001 From: Jungseung Yang Date: Thu, 26 Jan 2023 13:44:46 +0900 Subject: [PATCH 1/3] Working version of novnc in docker --- ubuntu/Dockerfile.20.04.xfce.amd64 | 59 +++++++ .../xfce4/desktop/icons.screen0-1904x1064.rc | 11 ++ .../xfce4/desktop/icons.screen0-2544x1201.rc | 11 ++ .../xfce4/desktop/icons.screen0-2544x1281.rc | 11 ++ .../panel/launcher-10/16161682692.desktop | 14 ++ .../panel/launcher-11/16161682693.desktop | 15 ++ .../panel/launcher-9/16161682691.desktop | 13 ++ .../assets/config/xfce4/terminal/terminalrc | 34 ++++ .../xfconf/xfce-perchannel-xml/thunar.xml | 5 + .../xfce-perchannel-xml/xfce4-desktop.xml | 30 ++++ .../xfce4-keyboard-shortcuts.xml | 154 ++++++++++++++++++ .../xfce-perchannel-xml/xfce4-panel.xml | 66 ++++++++ .../xfconf/xfce-perchannel-xml/xfwm4.xml | 87 ++++++++++ .../xfconf/xfce-perchannel-xml/xsettings.xml | 39 +++++ ubuntu/scripts/entrypoint.sh | 13 ++ 15 files changed, 562 insertions(+) create mode 100644 ubuntu/Dockerfile.20.04.xfce.amd64 create mode 100644 ubuntu/assets/config/xfce4/desktop/icons.screen0-1904x1064.rc create mode 100644 ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1201.rc create mode 100644 ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1281.rc create mode 100644 ubuntu/assets/config/xfce4/panel/launcher-10/16161682692.desktop create mode 100644 ubuntu/assets/config/xfce4/panel/launcher-11/16161682693.desktop create mode 100644 ubuntu/assets/config/xfce4/panel/launcher-9/16161682691.desktop create mode 100644 ubuntu/assets/config/xfce4/terminal/terminalrc create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml create mode 100644 ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml create mode 100755 ubuntu/scripts/entrypoint.sh diff --git a/ubuntu/Dockerfile.20.04.xfce.amd64 b/ubuntu/Dockerfile.20.04.xfce.amd64 new file mode 100644 index 000000000..cb237890a --- /dev/null +++ b/ubuntu/Dockerfile.20.04.xfce.amd64 @@ -0,0 +1,59 @@ +FROM ubuntu:focal as system + +ENV DISPLAY=:1 \ + VNC_PORT=5901 \ + NO_VNC_PORT=6901 \ + VNC_COL_DEPTH=32 \ + VNC_RESOLUTION=1024x768 + +ENV DEBIAN_FRONTEND=noninteractive + +COPY scripts/clean_snap.sh /tmp/ + +RUN apt update && \ + apt install --no-install-recommends -y apt-utils ;\ + apt install --no-install-recommends -y \ + xvfb xauth dbus-x11 xfce4 xfce4-terminal \ + wget sudo curl gpg git bzip2 vim-tiny procps python x11-xserver-utils \ + libnss3 libnspr4 libasound2 libgbm1 ca-certificates ttf-ubuntu-font-family xdg-utils \ + tigervnc-standalone-server tigervnc-common firefox firefox-locale-ko fonts-nanum \ + libappindicator3-1 libindicator3-7 && \ + apt upgrade -y ibus-hangul && \ + rm -vf /opt/lib*.deb; \ + apt-get clean; \ + rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + + +ENV TERM xterm +# Install NOVNC. +RUN git clone --branch v1.2.0 --single-branch https://github.com/novnc/noVNC.git /opt/noVNC; \ + git clone --branch v0.9.0 --single-branch https://github.com/novnc/websockify.git /opt/noVNC/utils/websockify; \ + ln -s /opt/noVNC/vnc.html /opt/noVNC/index.html; \ + ls -al /opt/noVNC/utils/ + +# disable shared memory X11 affecting Chromium +ENV QT_X11_NO_MITSHM=1 \ + _X11_NO_MITSHM=1 \ + _MITSHM=0 + +# give every user read write access to the "/root" folder where the binary is cached +RUN ls -la /root +RUN chmod 777 /root && mkdir /src + +RUN groupadd -g 61000 dockeruser; \ + useradd -g 61000 -l -m -s /bin/bash -u 61000 dockeruser + +COPY assets/config/ /home/dockeruser/.config + +RUN chown -R dockeruser:dockeruser /home/dockeruser;\ + chmod -R 777 /home/dockeruser ;\ + adduser dockeruser sudo;\ + echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +USER dockeruser + +COPY scripts/entrypoint.sh /src + +#Expose port 5901 to view display using VNC Viewer +EXPOSE 5901 6901 +ENTRYPOINT ["/src/entrypoint.sh"] diff --git a/ubuntu/assets/config/xfce4/desktop/icons.screen0-1904x1064.rc b/ubuntu/assets/config/xfce4/desktop/icons.screen0-1904x1064.rc new file mode 100644 index 000000000..13db187ef --- /dev/null +++ b/ubuntu/assets/config/xfce4/desktop/icons.screen0-1904x1064.rc @@ -0,0 +1,11 @@ +[xfdesktop-version-4.10.3+-rcfile_format] +4.10.3+=true + +[/] +row=0 +col=0 + +[/home/dockeruser] +row=1 +col=0 + diff --git a/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1201.rc b/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1201.rc new file mode 100644 index 000000000..13db187ef --- /dev/null +++ b/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1201.rc @@ -0,0 +1,11 @@ +[xfdesktop-version-4.10.3+-rcfile_format] +4.10.3+=true + +[/] +row=0 +col=0 + +[/home/dockeruser] +row=1 +col=0 + diff --git a/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1281.rc b/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1281.rc new file mode 100644 index 000000000..13db187ef --- /dev/null +++ b/ubuntu/assets/config/xfce4/desktop/icons.screen0-2544x1281.rc @@ -0,0 +1,11 @@ +[xfdesktop-version-4.10.3+-rcfile_format] +4.10.3+=true + +[/] +row=0 +col=0 + +[/home/dockeruser] +row=1 +col=0 + diff --git a/ubuntu/assets/config/xfce4/panel/launcher-10/16161682692.desktop b/ubuntu/assets/config/xfce4/panel/launcher-10/16161682692.desktop new file mode 100644 index 000000000..598b0c909 --- /dev/null +++ b/ubuntu/assets/config/xfce4/panel/launcher-10/16161682692.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Exec=exo-open --launch FileManager %u +Icon=system-file-manager +StartupNotify=true +Terminal=false +Categories=Utility;X-XFCE;X-Xfce-Toplevel; +OnlyShowIn=XFCE; +X-XFCE-MimeType=inode/directory;x-scheme-handler/trash; +X-AppStream-Ignore=True +Name=File Manager +Comment=Browse the file system +X-XFCE-Source=file:///usr/share/applications/exo-file-manager.desktop diff --git a/ubuntu/assets/config/xfce4/panel/launcher-11/16161682693.desktop b/ubuntu/assets/config/xfce4/panel/launcher-11/16161682693.desktop new file mode 100644 index 000000000..a09169bec --- /dev/null +++ b/ubuntu/assets/config/xfce4/panel/launcher-11/16161682693.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Exec=/usr/lib/firefox-esr/firefox-esr %u +Icon=firefox-esr +StartupNotify=true +Terminal=false +Categories=Network;X-XFCE;X-Xfce-Toplevel; +OnlyShowIn=XFCE; +X-XFCE-MimeType=x-scheme-handler/http;x-scheme-handler/https; +X-AppStream-Ignore=True +Name=Firefox ESR +Comment=Browse the World Wide Web +X-XFCE-Source=file:///usr/share/applications/exo-web-browser.desktop +Path= diff --git a/ubuntu/assets/config/xfce4/panel/launcher-9/16161682691.desktop b/ubuntu/assets/config/xfce4/panel/launcher-9/16161682691.desktop new file mode 100644 index 000000000..e51e56e8d --- /dev/null +++ b/ubuntu/assets/config/xfce4/panel/launcher-9/16161682691.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Exec=exo-open --launch TerminalEmulator +Icon=utilities-terminal +StartupNotify=true +Terminal=false +Categories=Utility;X-XFCE;X-Xfce-Toplevel; +OnlyShowIn=XFCE; +X-AppStream-Ignore=True +Name=Terminal Emulator +Comment=Use the command line +X-XFCE-Source=file:///usr/share/applications/exo-terminal-emulator.desktop diff --git a/ubuntu/assets/config/xfce4/terminal/terminalrc b/ubuntu/assets/config/xfce4/terminal/terminalrc new file mode 100644 index 000000000..efd97ac28 --- /dev/null +++ b/ubuntu/assets/config/xfce4/terminal/terminalrc @@ -0,0 +1,34 @@ +[Configuration] +BackgroundMode=TERMINAL_BACKGROUND_TRANSPARENT +BackgroundDarkness=0.810000 +MiscAlwaysShowTabs=FALSE +MiscBell=FALSE +MiscBellUrgent=FALSE +MiscBordersDefault=TRUE +MiscCursorBlinks=FALSE +MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK +MiscDefaultGeometry=80x24 +MiscInheritGeometry=FALSE +MiscMenubarDefault=TRUE +MiscMouseAutohide=FALSE +MiscMouseWheelZoom=TRUE +MiscToolbarDefault=FALSE +MiscConfirmClose=TRUE +MiscCycleTabs=TRUE +MiscTabCloseButtons=TRUE +MiscTabCloseMiddleClick=TRUE +MiscTabPosition=GTK_POS_TOP +MiscHighlightUrls=TRUE +MiscMiddleClickOpensUri=FALSE +MiscCopyOnSelect=FALSE +MiscShowRelaunchDialog=TRUE +MiscRewrapOnResize=TRUE +MiscUseShiftArrowsToScroll=FALSE +MiscSlimTabs=FALSE +MiscNewTabAdjacent=FALSE +MiscSearchDialogOpacity=100 +MiscShowUnsafePasteDialog=TRUE +ColorForeground=#dcdcdc +ColorBackground=#2c2c2c +ColorCursor=#dcdcdc +ColorPalette=#3f3f3f;#705050;#60b48a;#dfaf8f;#9ab8d7;#dc8cc3;#8cd0d3;#dcdcdc;#709080;#dca3a3;#72d5a3;#f0dfaf;#94bff3;#ec93d3;#93e0e3;#ffffff \ No newline at end of file diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml new file mode 100644 index 000000000..c3d5d2a09 --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml new file mode 100644 index 000000000..8dd67fea9 --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml new file mode 100644 index 000000000..ab0d59768 --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml new file mode 100644 index 000000000..027c09793 --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml new file mode 100644 index 000000000..0074c3cfa --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml new file mode 100644 index 000000000..f43fbee03 --- /dev/null +++ b/ubuntu/assets/config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ubuntu/scripts/entrypoint.sh b/ubuntu/scripts/entrypoint.sh new file mode 100755 index 000000000..3dd27fb0b --- /dev/null +++ b/ubuntu/scripts/entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/bash +# set -e: exit asap if a command exits with a non-zero status +set -e +trap ctrl_c INT +function ctrl_c() { + exit 0 +} +# entrypoint.sh file for starting the xvfb with better screen resolution, configuring and running the vnc server. +rm /tmp/.X1-lock 2> /dev/null & +/opt/noVNC/utils/launch.sh --vnc localhost:$VNC_PORT --listen $NO_VNC_PORT & +# Insecure option is needed to accept connections from the docker host. +vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -SecurityTypes None -localhost no --I-KNOW-THIS-IS-INSECURE & +wait \ No newline at end of file From 0171b735797ed24ab7623c605f1524a536b2df24 Mon Sep 17 00:00:00 2001 From: Jungseung Yang Date: Thu, 26 Jan 2023 13:46:38 +0900 Subject: [PATCH 2/3] Delete unused code --- ubuntu/Dockerfile.20.04.xfce.amd64 | 2 -- 1 file changed, 2 deletions(-) diff --git a/ubuntu/Dockerfile.20.04.xfce.amd64 b/ubuntu/Dockerfile.20.04.xfce.amd64 index cb237890a..cbd8d3d04 100644 --- a/ubuntu/Dockerfile.20.04.xfce.amd64 +++ b/ubuntu/Dockerfile.20.04.xfce.amd64 @@ -8,8 +8,6 @@ ENV DISPLAY=:1 \ ENV DEBIAN_FRONTEND=noninteractive -COPY scripts/clean_snap.sh /tmp/ - RUN apt update && \ apt install --no-install-recommends -y apt-utils ;\ apt install --no-install-recommends -y \ From 500bbac13b7312c22a2d8588898727e3a2cee36e Mon Sep 17 00:00:00 2001 From: Jungseung Yang Date: Tue, 31 Jan 2023 00:26:25 +0900 Subject: [PATCH 3/3] Supporting for execution on the Backend.AI --- ubuntu/Dockerfile.20.04.xfce.amd64 | 53 +++++++++++++++++++-------- ubuntu/assets/policy.yml | 23 ++++++++++++ ubuntu/assets/service-defs/novnc.json | 16 ++++++++ ubuntu/scripts/entrypoint.sh | 7 +++- 4 files changed, 83 insertions(+), 16 deletions(-) create mode 100644 ubuntu/assets/policy.yml create mode 100644 ubuntu/assets/service-defs/novnc.json diff --git a/ubuntu/Dockerfile.20.04.xfce.amd64 b/ubuntu/Dockerfile.20.04.xfce.amd64 index cbd8d3d04..734c73904 100644 --- a/ubuntu/Dockerfile.20.04.xfce.amd64 +++ b/ubuntu/Dockerfile.20.04.xfce.amd64 @@ -15,14 +15,14 @@ RUN apt update && \ wget sudo curl gpg git bzip2 vim-tiny procps python x11-xserver-utils \ libnss3 libnspr4 libasound2 libgbm1 ca-certificates ttf-ubuntu-font-family xdg-utils \ tigervnc-standalone-server tigervnc-common firefox firefox-locale-ko fonts-nanum \ - libappindicator3-1 libindicator3-7 && \ + libappindicator3-1 libindicator3-7 ncurses-term && \ apt upgrade -y ibus-hangul && \ rm -vf /opt/lib*.deb; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* -ENV TERM xterm +#ENV TERM xterm # Install NOVNC. RUN git clone --branch v1.2.0 --single-branch https://github.com/novnc/noVNC.git /opt/noVNC; \ git clone --branch v0.9.0 --single-branch https://github.com/novnc/websockify.git /opt/noVNC/utils/websockify; \ @@ -36,22 +36,45 @@ ENV QT_X11_NO_MITSHM=1 \ # give every user read write access to the "/root" folder where the binary is cached RUN ls -la /root -RUN chmod 777 /root && mkdir /src +RUN chmod 777 /root && mkdir /src && mkdir /tmp/user_config && mkdir /usr/local/xfcedeskconfig +COPY assets/config/ /tmp/user_config/ +RUN cd /tmp/user_config && tar czvf /usr/local/xfcedeskconfig/deskconfig.tar.gz * && rm -rf /tmp/user_config +COPY scripts/entrypoint.sh /usr/local/bin/ -RUN groupadd -g 61000 dockeruser; \ - useradd -g 61000 -l -m -s /bin/bash -u 61000 dockeruser +# this have to be moved to bootstrap code +#COPY assets/config/ /home/dockeruser/.config -COPY assets/config/ /home/dockeruser/.config +# RUN chown -R dockeruser:dockeruser /home/dockeruser;\ +# chmod -R 777 /home/dockeruser ;\ +# adduser dockeruser sudo;\ +# echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers -RUN chown -R dockeruser:dockeruser /home/dockeruser;\ - chmod -R 777 /home/dockeruser ;\ - adduser dockeruser sudo;\ - echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers +#USER dockeruser -USER dockeruser +#COPY scripts/entrypoint.sh /src -COPY scripts/entrypoint.sh /src +#Expose port 5901 to view display using VNC Viewer (6901 --> noVNC) +#EXPOSE 5901 6901 +#ENTRYPOINT ["/src/entrypoint.sh"] -#Expose port 5901 to view display using VNC Viewer -EXPOSE 5901 6901 -ENTRYPOINT ["/src/entrypoint.sh"] +WORKDIR /home/work + +ENV USER work +ENV PASSWORD work +ENV USERID 1000 +ENV GROUPID 1000 + +COPY assets/service-defs /etc/backend.ai/service-defs +COPY assets/policy.yml /etc/backend.ai/jail/policy.yml + +LABEL ai.backend.kernelspec="1" \ + ai.backend.envs.corecount="OPENBLAS_NUM_THREADS,OMP_NUM_THREADS,NPROC" \ + ai.backend.features="batch query uid-match user-input" \ + ai.backend.resource.min.cpu="1" \ + ai.backend.resource.min.mem="256m" \ + ai.backend.base-distro="ubuntu20.04" \ + ai.backend.runtime-type="app" \ + ai.backend.runtime-path="/usr/false" \ + ai.backend.service-ports="novnc:http:5900" + +RUN ln -sf /usr/share/terminfo/x/xterm-color /usr/share/terminfo/x/xterm-256color diff --git a/ubuntu/assets/policy.yml b/ubuntu/assets/policy.yml new file mode 100644 index 000000000..e4c87777d --- /dev/null +++ b/ubuntu/assets/policy.yml @@ -0,0 +1,23 @@ +whitelist_paths: + OP_OPEN: ["*"] + OP_ACCESS: ["*"] + OP_EXEC: ["*"] + OP_STAT: ["*"] + OP_CHMOD: ["/home/work/*", "/tmp/*"] +exec_allowance: -1 +fork_allowance: -1 +max_child_procs: 32 +extra_envs: [] +preserved_env_keys: [ + "HOME", "PATH", "LANG", + "USER", "SHELL", "TERM", + "LD_LIBRARY_PATH", + "LD_PRELOAD", +] + +diff_to_default: true + +# Following syscalls are blindly allowed. +# IMPORTANT: ptrace MUST NOT be included! +allowed_syscalls: + - "umask" diff --git a/ubuntu/assets/service-defs/novnc.json b/ubuntu/assets/service-defs/novnc.json new file mode 100644 index 000000000..a0ae2d482 --- /dev/null +++ b/ubuntu/assets/service-defs/novnc.json @@ -0,0 +1,16 @@ +{ + "prestart": [], + "command": [ + "/bin/bash", + "/usr/local/bin/entrypoint.sh", + "{ports[0]}" + ], + "allowed_arguments": [ + ], + "allowed_envs": [ + "PASSWORD", + "RESOLUTION" + ], + "default_arguments": { + } +} diff --git a/ubuntu/scripts/entrypoint.sh b/ubuntu/scripts/entrypoint.sh index 3dd27fb0b..2dbf7cee8 100755 --- a/ubuntu/scripts/entrypoint.sh +++ b/ubuntu/scripts/entrypoint.sh @@ -5,9 +5,14 @@ trap ctrl_c INT function ctrl_c() { exit 0 } + +[ ! -z "${RESOLUTION+x}" ] && export VNC_RESOLUTION="$RESOLUTION" +[ ! -d "/home/work/.config" ] && mkdir /home/work/.config +[ ! -d "/home/work/.config/xfce4" ] && tar xzvf /usr/local/xfcedeskconfig/deskconfig.tar.gz -C /home/work/.config/ + # entrypoint.sh file for starting the xvfb with better screen resolution, configuring and running the vnc server. rm /tmp/.X1-lock 2> /dev/null & -/opt/noVNC/utils/launch.sh --vnc localhost:$VNC_PORT --listen $NO_VNC_PORT & +/opt/noVNC/utils/launch.sh --vnc localhost:$VNC_PORT --listen $1 & # Insecure option is needed to accept connections from the docker host. vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -SecurityTypes None -localhost no --I-KNOW-THIS-IS-INSECURE & wait \ No newline at end of file