This repository contains the source code and build scripts for the EL8-based CernVM 5 container image. The image is intended to be a JeOS (Just enough OS) and provides:
- A CernVM File System client with its minimal dependencies
- The HEP_OSlibs meta package
For most Use Cases it is sensible to run the image with CernVM-FS either mounted from the host or from the inside of the container.
- The repository cernvm-five.cern.ch provides common System Applications like editors, browsers or cloud tools.
- Other repositories with Scientific Applications can be mounted as usual.
NOTE: System Applications don't use LD_LIBRARY_PATH and therefore can be run in parallel to other applications from other repositories safely.
Besides /cvmfs the image comes with two more dedicated host mount points:
- /workspace as a shared folder between container and host
- /data for data integration with for e.g. EOS
docker build -f docker/Dockerfile . -t cernvm-five
With Buildah in for e.g., in a build container
buildah bud -t cernvm-five -f docker/Dockerfile .
docker pull registry.cern.ch/cernvm/five/cernvm-five:latest
CernVM 5 can serve as a base layer for custom container images. For e.g. use
FROM registry.cern.ch/cernvm/five/cernvm-five:latest
RUN dnf -y install mypackage
COPY /my_init.sh /
ENTRYPOINT ["bash", "/my_init.sh"]
to extend the image as you wish.
Make sure to use the dedicated mountpoints for host integration. It is recommended to run the image with either CernVM-FS mounted from the host or with an independent CernVM-FS client inside the container
docker run -it -v /cvmfs:/cvmfs:ro registry.cern.ch/cernvm/five/cernvm-five:latest bash
docker run -it --device /dev/fuse --cap-add SYS_ADMIN registry.cern.ch/cernvm/five/cernvm-five:latest bash
podman run -it -v /cvmfs:/cvmfs:ro registry.cern.ch/cernvm/five/cernvm-five:latest bash
podman run -it --device /dev/fuse --cap-add SYS_ADMIN registry.cern.ch/cernvm/five/cernvm-five:latest bash
Using Singularity and unpacked.cern.ch
singularity shell /cvmfs/unpacked.cern.ch/registry.cern.ch/cernvm/five/cernvm-five\:latest/