base image for Desktop / X11 Applications (ssh X11, vnc, http/https novnc) on debian [x86 + arm]
10K+
This container is created, to make it easy to use Desktop Applications on Systems that can run Docker Containers.
It is based on _/debian and comes with various way to use your X11 applications:
I recommend using the desktopcontainers/base-alpine if possible. Only if you really need debian as base image, use this container.
The main reason to create this debian based desktop container was to support commercial software e.g. citrix icaclient, zoom etc. those often don't support the musl-libc and have problems running on alpine. Also those containers/software are often only x86 compatible.
5900, no password)80, no password)443, no password)app, no password)
ssh -X -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no [email protected] -p 2222 /container/scripts/app (exported port 22 to 2222 on localhost)ssh -X -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no app@<CONTAINER IP ADRESS> /container/scripts/appdocker run --rm -ti -v "/tmp/.X11-unix:/tmp/.X11-unix" -v "$HOME/.Xauthority:/home/app/.Xauthority" -e "DISPLAY=$DISPLAY" -h $HOSTNAME --net=host --entrypoint=/container/scripts/app --user=app desktopcontainer/...VNC_SCREEN_DEPTH to 24VNC_SCREEN_DEPTH supportSERVER_NAME
localhostENABLE_SUDO
ENABLE_KIOSK
app and make sure it will always restartENABLE_SUDO - but it's still possible to use with sudo enabled.rdesktop, vncviewer, Browser etc.VNC_SCREEN_DEPTH
24VNC_SCREEN_RESOLUTION
1280x1024VNC_SCREEN_DEPTH env$SERVER_NAME.[key|crt] here.ssh_host_rsa_key & ssh_host_rsa_key.pub here.XAuthLocation /usr/X11/bin/xauth to your ~/.ssh/configIf you wan't to use this container as base for your own containerized Desktop Applications, you can use the following informations to get it done.
It's best to configure everything in a Dockerfile and not at runtime.
add all your code used for starting your application/s to /container/scripts/app.
Note: There are applications which get in trouble running in multiple instances.
Since your Application get's started on container start on the VNC X11 Server, it might collide with the one
which is started via SSH. If your application can only run once, make sure the app script kills all other instances before starting a new instance.
Add commands to init phase of of entrypoint (only on first run/creation).
sed -i 's/# INIT PHASE/# INIT PHASE\nYOUR_COMMANDS_HERE/g' /container/scripts/entrypoint.sh
Add commands to run phase of of entrypoint (on every run).
sed -i 's/# PRE-RUN PHASE/# PRE-RUN PHASE\nYOUR_COMMANDS_HERE/g' /container/scripts/entrypoint.sh
Rename Menu Entry
sed -i 's/Application/NEW_ENTRY_NAME/g' /etc/xdg/openbox/menu.xml
Add Menu Entry
sed -i '0,/<item/ s,,<item label="NEW_ENTRY_NAME"><action name="Execute"><execute>NEW_ENTRY_COMMAND</execute></action></item>\n<item,' /etc/xdg/openbox/menu.xml
Content type
Image
Digest
Size
222.6 MB
Last updated
over 4 years ago
docker pull desktopcontainers/base-debian