summaryrefslogtreecommitdiffstats
path: root/environments/vncserver
diff options
context:
space:
mode:
Diffstat (limited to 'environments/vncserver')
-rw-r--r--environments/vncserver/Dockerfile20
-rwxr-xr-xenvironments/vncserver/entrypoint.sh8
-rw-r--r--environments/vncserver/passwd1
-rw-r--r--environments/vncserver/run.sh20
4 files changed, 49 insertions, 0 deletions
diff --git a/environments/vncserver/Dockerfile b/environments/vncserver/Dockerfile
new file mode 100644
index 0000000..b9e9fe2
--- /dev/null
+++ b/environments/vncserver/Dockerfile
@@ -0,0 +1,20 @@
+FROM ubuntu:latest
+
+RUN apt-get update && apt-get install -y tigervnc-standalone-server openssh-server xvfb xterm
+RUN mkdir -p /run/sshd /var/run/sshd /root/.vnc /root/.ssh ; \
+ echo "root:root" | chpasswd && \
+ echo 'Port 2222' >> /etc/ssh/sshd_config && \
+ echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \
+ echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config && \
+ echo 'PubkeyAuthentication yes' >> /etc/ssh/sshd_config && \
+ echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \
+ apt-get clean && \
+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+
+EXPOSE 5555
+
+COPY passwd /root/.vnc/passwd
+
+COPY entrypoint.sh /entrypoint.sh
+
+CMD [ "/entrypoint.sh" ]
diff --git a/environments/vncserver/entrypoint.sh b/environments/vncserver/entrypoint.sh
new file mode 100755
index 0000000..6c7c1ad
--- /dev/null
+++ b/environments/vncserver/entrypoint.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+echo "remmina" >> ~/.vnc/passwd
+
+# Start the vnc server while only accepting connections through the unix-socket.
+# This will prompt the user for a password
+vncserver -rfbport=5555 -localhost no -Log *:stderr:100 -xstartup /usr/bin/xterm
+tail -f ~/.vnc/*.log
diff --git a/environments/vncserver/passwd b/environments/vncserver/passwd
new file mode 100644
index 0000000..b37aff4
--- /dev/null
+++ b/environments/vncserver/passwd
@@ -0,0 +1 @@
+ª‹§‚Â:ÿ~ \ No newline at end of file
diff --git a/environments/vncserver/run.sh b/environments/vncserver/run.sh
new file mode 100644
index 0000000..2f19341
--- /dev/null
+++ b/environments/vncserver/run.sh
@@ -0,0 +1,20 @@
+if ! type podman > /dev/null; then
+ if ! type docker > /dev/null; then
+ echo "Install podman or docker to use the remmina environments!"
+ exit 1
+ fi
+ CRT=docker
+else
+ CRT=podman
+fi
+
+
+CONTAINER_NAME="vncserver-ssh-socket-forward"
+IMAGE_NAME="remmina/environments/vncserver"
+
+$CRT stop "${CONTAINER_NAME}"
+$CRT rm "${CONTAINER_NAME}"
+
+$CRT build . -t ${IMAGE_NAME}
+
+$CRT run -p 5555:5555 -v "${PWD}/vnc-server-tmp:/vnc-server-tmp:rw" --rm --name "${CONTAINER_NAME}" -it ${IMAGE_NAME}