• Help
    Discussion forum
    Search tips
  • About
    CERN Open Data
    ALICE
    ATLAS
    CMS
    DELPHI
    LHCb
    OPERA
    TOTEM
    Glossary

Running the DELPHI software stack using Docker

Documentation Guide


Running DELPHI software from a container

An alternative way to run DELPHI software is to use a container image. The following guide assumes that you are using Podman, nevertheless it is expected to work in a similar way with other container management technologies, such as Docker. The required images to run the DELPHI software are automatically created from a CI when the software stack is being build, and contain the full software stack.

Available images

Images are available in the registry of the DELPHI deployment project at CERNs gitlab instance.

In this guide we will use the latest Alma9 image.

Starting the container

In this guide, we will assume to be running on a Linux desktop, which has the podman and podman-docker packages installed. Some of the applications require a graphical interface, namely the CERNLIB applications paw, paw++ and kxterm, as well as the DELPHI event display.

If you want to run on any data samples, please download them first. You can then attach them using the -v option of the podman run command. Please check the podman documentation for more details. The Alma9 image we use in this guide can also access the data directly from the EOS file system.

The image is configured with a local user called delphi. For the commands below, we'll use the following conventions:

  • a prompt $ xyz indicates that the command xyz is to be run on your local machine or VM.
  • a prompt [delphi ~] $ xyz indicates that the command xyz is to be run inside the started container.

To start the container on a Linux based system, use:

$ xhost + local:docker
$ docker run --privileged --rm -it -e DISPLAY --network host -v /tmp/.X11-unix:/tmp/.X11-unix -v ~/.Xauthority:/home/delphi/.Xauthority --user delphi gitlab-registry.cern.ch/delphi/deployment/delphi/al9_64 /bin/bash -l

This command will download the Alma9 based container and create a login shell for the DELPHI user.

This image comes with support for EOS: when launched on a system which supports fuse file systems, the DELPHI data will be available inside the container beneath the path /eos/opendata/delphi. Note that due to the --rm option, the container will be destroyed when you exit it, and all the work done inside the container will be lost.

Contents of the container image

The image ships with the following modules:

  • CERNLIB: The DELPHI software uses the community version of CERNLIB
  • dstana is the analysis framework of DELPHI. For historical reasons there are 3 different versions available. The default one and the one which should be used is the pro version. Only switch to a non default version is you know what you are doing.
  • simana contains the simulation and reconstruction framework of DELPHI. Note that it differs for each year. For the year 2000 there are 2 different versions: va0e and va0s. The former is valid for the first year, the latter for the second part of the year when a part of the TPC went offline.
  • delgra is the event display of delphi.

The software stack itself can be found in /delphi on the container.

Running a simple example: Simulation and event display

The home directory of the delphi user contains a set of basic examples which can be used as templates.

Event simulation

Follow the DELPHI event simulation guide to create a few sample events to scan. For the next chapter, the short DST output file will be needed.

Scanning events

To run the event display, let's first make sure that the required folders are present. So please run

[delphi ~] $ mkdir -p ~/graexe/data ~/graexe/hcopy  ~/graexe/macro  ~/graexe/run

For convenience, let's copy over the short dst file

[delphi ~] $ cp simana.sdst ~/graexe/data

Finally, start the event display from the home directory

[delphi ~] $ cd
[delphi ~] $ rungra

Please take a look at the DELGRA guide for a quick start on how to use the event display.

ALICE experiment
ATLAS experiment
CMS experiment
DELPHI experiment
LHCb experiment
OPERA experiment
PHENIX experiment
TOTEM experiment
© CERN, 2014–2025 ·
Terms of Use ·
Privacy Policy ·
Help ·
GitHub ·
Twitter ·
Email
Powered by Invenio
Open Data Portal v0.4.3
CERN