Singularity and docker containers for Tools for weather and climate data analysis tools.
Two containers are available, one for singularity/apptainer and one for Docker.
These provide a conda
environment in which cf-python
, cf-plot
, cfview
,
esmvaltool
and iris
are available.
The containers are designed to be used via an interactive shell when started.
esmvaltool
and cfview
can be started via the command line, and cf-python
,
cf-plot
and iris
are available within python
.
If using apptainer
, the SylabsCloud continer library needs to be configured.
This step isn't required for singularity
.
$ apptainer remote add --no-login SylabsCloud cloud.sycloud.io
$ apptainer remote use SylabsCloud
then
$ apptainer remote list
should contain the lines (amoungs others)
NAME URI ACTIVE GLOBAL EXCLUSIVE INSECURE
SylabsCloud cloud.sycloud.io YES NO NO NO
End of apptainer only section.
Now download the container:
$ singularity pull library://simonwncas/default/datatools
and run with
$ singularity shell -B /run datatools_latest.sif
The docker
container is downloded with:
$ docker pull simonwncas/datatools
and started with
$ docker run -it simonwncas/datatools
note this will not mount any local disks.
If cf-plot
or cfview
are required, then extra options are needed for Qt5
and X11
graphics:
$ xhost + #allow the docker instance to access the local X11 server.
$ docker run -it -e "DISPLAY=$DISPLAY" -v "$HOME/.Xauthority:/root/.Xauthority:ro" --network host simonwncas/datatools
again, no local disks are mounted.
See https://medium.com/@mreichelt/how-to-show-x11-windows-within-docker-on-mac-50759f4b65cb for guidance on how to configure docker
for X11
on Macs.