Bridging the Laptop‑to‑Cluster Gap
A multi-service stack is trivial to run with Docker Compose on a laptop. On a shared cluster there is no Docker daemon, and the scheduler owns every resource. This guide is the translation.
- Allocation Slurm grants one node and job-scoped resources. ↓
- Coordinator The coordinating service starts on loopback inside the allocation. ↓
- Readiness gate A semantic check must pass before workers start. ↓
- Workers One or more exclusive worker steps start only after readiness. ↓
- Verification Result invariants are checked before success is recorded.
Tested scope: The baseline workflow was validated on Purdue Anvil with Slurm and Apptainer.
Boundary: Scheduler account and partition are supplied at submission time
Compose-to-HPC mapping
- service
- scheduler job or step
- depends_on
- explicit readiness check
- volumes
- job-scoped scratch
- ports
- loopback, reached by tunnel
Start here
- Baseline Orchestration: Establish single-node parity with local development environments.
- Prerequisites and center values: The values that differ at every HPC facility — account, partition, scratch path, and module names.
- Run the baseline: Submit the single-node workflow and verify success from result artifacts.