Run Hermes in Singularity — HPC Container Execution
Configure Hermes Agent to execute commands in Singularity containers — ideal for HPC clusters and shared compute environments.
Singularity (now Apptainer) is the container runtime of choice for HPC clusters and shared compute environments. It runs containers without requiring root access, making it perfect for university clusters, research computing, and multi-user systems.
Managed cloud · API costs included · Skill library · Cancel anytime
Before you start:
- ☑Hermes Agent installed
- ☑Singularity/Apptainer installed on the system
- ☑Access to an HPC cluster or shared compute environment
Steps
- 1
Install Singularity/Apptainer
Follow your cluster's documentation or install from sylabs.io/singularity
- 2
Configure the backend
In config.yaml, set terminal: backend: singularity
- 3
Set the container image
Set terminal: singularity_image: docker://nikolaik/python-nodejs:python3.11-nodejs20
- 4
Set the working directory
Set terminal: cwd: /workspace (path inside the container)
- 5
Configure resource limits
Set container_cpu, container_memory as needed for your HPC allocation
Pro Tips
- 💡Singularity pulls Docker images automatically — use docker:// prefix for Docker Hub images
- 💡Containers run as your user, not root — no privilege escalation concerns
- 💡Home directory is usually auto-mounted — your files are accessible inside the container
- 💡Works great with SLURM and other HPC job schedulers
Troubleshooting
❌ Image pull fails
✅ Check your network access to Docker Hub. Some HPC clusters require proxy settings or pre-pulled images.
❌ Permission denied errors inside container
✅ Singularity runs as your user. Ensure the container image has appropriate permissions for your UID/GID.
❌ Home directory not visible in container
✅ Some HPC setups disable auto-binding. Add --bind flags or configure singularity.conf appropriately.