Hermes Agent

How-To Guide

Run Hermes in Singularity — HPC Container Execution

Configure Hermes Agent to execute commands in Singularity containers — ideal for HPC clusters and shared compute environments.

Quick answer

The Singularity (now Apptainer) terminal backend runs Hermes commands in containers without requiring root, which is exactly what HPC clusters and shared research compute demand. Configure it on a cluster where Docker isn't permitted, and the agent executes inside rootless, reproducible containers.

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.

Deploy Hermes faster with FlyHermes

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. 1

    Install Singularity/Apptainer

    Follow your cluster's documentation or install from sylabs.io/singularity

  2. 2

    Configure the backend

    In config.yaml, set terminal: backend: singularity

  3. 3

    Set the container image

    Set terminal: singularity_image: docker://nikolaik/python-nodejs:python3.11-nodejs20

  4. 4

    Set the working directory

    Set terminal: cwd: /workspace (path inside the container)

  5. 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.

FAQ

Why use Singularity/Apptainer instead of Docker?

HPC clusters and shared compute usually forbid root and Docker. Singularity/Apptainer runs containers rootless, so the agent can execute in containers on university and research clusters.

Where does the Singularity backend make sense?

HPC environments, university clusters, and any shared compute where you lack root but need reproducible, isolated execution.

Is Apptainer the same as Singularity?

Apptainer is the current name for what was Singularity. The backend targets that runtime; configuration is the same idea — rootless containers for command execution.

Related Guides