High Performance Computing guides and policies for the University of Queensland.
TO BE COMPLETED
David Green 28/11/2024 (updated 03/09/2026)
Software containers is a generic technology term. It provides a mechanism for different operating systems and software that are not available in the host operating system so they can be used safely on the HPC platform. Software containers can be built from a “recipe” or downloaded as pre-built images, often as a stack that is assembled on the fly.
The names Docker, Shifter, Singularity/Apptainer are like different “brands” that support software containers.
There are several reasons for supporting the use of software containers on Bunya:
Bunya uses Apptainer. Apptainer was created when Singularity was rebranded when it joined the Linux Foundation. Currently, the version of Apptainer installed on Bunya is version 1.3.3-1.el8 1.5.2-1.el9
.
/scratch/user , /scratch/project or $TMPDIR)/scratch./home or $TMPDIR.A software container can automatically access /home and /scratch/user.
This is because you will most often run the container as your default username and group.
newgrp Q9999RW)./scratch/project,/scratch/project space.| Operation | Command | |
|---|---|---|
| 1a | create a container image outright (no proot issue) | apptainer build myContainer.sif myContainer.def |
| 1b | create a container image outright (proot issue) | apptainer build --ignore-proot myContainer.sif myContainer.def |
| 1c | pull a container image (no proot issue) | apptainer pull ... |
| 1d | pull a container image (if proot issue) | apptainer build --ignore-proot container.sif docker://repo/name:tag |
| 2 | create a sandbox | apptainer build --sandbox myContainer.sandbox myContainer.def |
| 3 | update the sandbox | apptainer shell --writable myContainer.sandbox |
| 4 | convert the sandbox to a standalone image | apptainer build myContainer.sif myContainer.sandbox |
| 5 | start a shell interface in the container | apptainer shell myContainer.sif |
| 6 | run the default action for the container | apptainer run myContainer.sif |
| 7 | exec an arbitrary action using the container | apptainer exec myContainer.sif someLinuxCommand |
Example
QCIF have notes on their training github (details to follow) For more info about apptainer consult the manual page and online resources.