Public | Automated Build

Last pushed: 2 months ago
Short Description
Debian with display server, desktop Xfce and ALSA audio
Full Description


Made for netPI, the Open Edge Connectivity Ecosystem

Debian with display server, desktop Xfce and ALSA audio

The image provided hereunder deploys a container with installed Debian, display server, desktop environment and ssh server.

Base of this image builds a tagged version of debian:stretch with installed display server enabling the device's HDMI port plus the desktop environment Xfce turning the device in a desktop computer with mouse and keyboard support. Additonally it embeds the ALSA Audio Sound package for sending the sound across HDMI.

Container prerequisites

Host devices

The following host devices need to be exposed to the container

  • for HDMI support the devices /dev/tty0,/dev/tty2,/dev/fb0
  • for mouse and keyboard support the device /dev/input
  • for sound over HDMI support the device /dev/snd
Privileged mode

Only the privileged mode option lifts the enforced container limitations to allow usage of display server in a container.

Host network

The container needs the "Host" network stack to be shared with the container.

Getting started

On netPI

STEP 1. Open netPI's landing page under https://<netpi's ip address>.

STEP 2. Click the Docker tile to open the Docker management user interface.

STEP 3. Enter the following parameters under Containers > Add Container

  • Image: hilschernetpi/netpi-desktop-hdmi

  • Network > Network: Host

  • Restart policy" : always

  • Runtime > Privileged mode : On

  • Runtime > Devices > add device: Host "/dev/tty0" -> Container "/dev/tty0"andHost "/dev/tty2" -> Container "/dev/tty2"andHost "/dev/fb0" -> Container "/dev/fb0"andHost "/dev/input" -> Container "/dev/input"andHost "/dev/snd" -> Container "/dev/snd"

STEP 4. Press the button Actions > Start container

Pulling the image from Docker Hub may take up to 5 minutes.

On Pi 3 for test

STEP 1. Establish a console connection to Pi 3.

STEP 2. Install Docker if not already done, else skip.

STEP 3. Run a container instance of the image using the following command line

docker run --device="/dev/tty0" --device="/dev/tty2" --device="/dev/fb0" --device="/dev/input" --device="/dev/snd" --net=host --restart=always --privileged hilschernetpi/netpi-desktop-hdmi


Make sure you have a mouse and keyboard connected before you start the container, else they will not be recognized. A HDMI monitor will only be recognized if it was already connected during netPI'S boot sequence, else its screen remains black. For simple tests use Chromium to do some web page visits.


  • hilscher/netPI-desktop-hdmi:latest - non-versioned latest development output of the master branch. Shouldn't be used since under development all the time.

GitHub sources and licenses

The image is built from the GitHub project netPI-desktop-hdmi. It complies with the Dockerfile method to build a Docker image automated.

View the license information for the software in the Github project. As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

To build the container for an ARM CPU on Docker Hub(x86 based) the Dockerfile uses the method described here

Hilscher Gesellschaft fuer Systemautomation mbH

Docker Pull Command
Source Repository