Docker image usage
Launch a DaVinci
container
The shortcut to run a DaVinci
docker
in this project is:
make docker-dv
The make
rule is actually defined as the following:
docker run --rm -it -v `pwd`:/data -e UID=$(id -u) -e GID=$(id -g) --net=host umdlhcb/lhcb-stack-cc7:DaVinci-v45r6-SL
More generally, if you want to mount another folder, with a path <src_path>
:
docker run --rm -it -v <src_path>:/data -e UID=$(id -u) -e GID=$(id -g) --net=host umdlhcb/lhcb-stack-cc7:DaVinci-v45r6-SL
Info
docker
images are read-only. When we launch a docker
container, a
writable layer is placed on top of the image.
Use official DaVinci
inside container
The command is very similar to the one used on lxplus
:
lb-run DaVinci/latest gaudirun.py <ntuple_options1> <ntuple_options2> ...
DaVinci
inside the container,
DaVinci/latest
would always work.
Use locally compiled DaVinci
inside container
Since we need additional TupleTool
1 in our reconstruction script, we also
provide a locally compiled DaVinci
inside the container, provided that you
are using a DaVinci
image with a -SL
suffix.
To launch this locally compiled DaVinci
:
run gaudirun.py <ntuple_options1> <ntuple_options2> ...
Note
To make our lives easier, a run.sh
command is typically created in each
stripping lines, such as:
run1-rdx/run.sh
run2-rdx/run.sh
If you see this file, take a look at it to see the availabe commands, and
run it inside the docker
container:
./run.sh <path_to_cond_file> # inside docker
debug
flag can be supplied so that only the first couple of
events will be considered.
Remove old docker images
To list all local docker
images:
docker images
If you download a newer version of docker
image, and want to remove the old
ones to save disk space, you can:
docker rmi <docker_image_tag>
docker image prune
<docker_image_tag>
should be something like
umdlhcb/lhcb-stack-cc7:DaVinci-v45r6-SL
.
-
Such as
TupleToolApplyIsolation
andTupleToolTauMuDiscVars
. ↩