Open source runbook automation service with a web console, CLI and WebAPI for running standardized operational tasks across nodes.
hashicorp/nomad
A workload orchestrator that schedules and runs containers, VMs, and legacy binaries across on-prem and cloud infrastructure.
- Stars
- 17,028
- Forks
- 2,149
- Open issues
- 1,628
- Last commit
- yesterday
What is it?
Nomad is a workload orchestrator from HashiCorp that deploys and manages containers, non-containerized applications, and virtual machines across on-premises and cloud infrastructure. It uses pluggable task drivers, including Docker, Podman, exec, Java, and QEMU, so legacy and batch applications can run alongside containers on the same cluster without being containerized first.
Nomad ships as a single self-contained binary that combines resource management and scheduling, and it does not depend on external storage or coordination services. It uses leader election and state replication for high availability, and it handles application, node, and driver failures automatically. Device plugins detect hardware such as GPUs, FPGAs, and TPUs, which supports machine learning and AI workloads.
For larger deployments, Nomad supports federation across multiple regions and clouds. It integrates with Terraform, Consul, and Vault for provisioning, service discovery, and secrets management. Nomad runs on Linux, Windows, and macOS, and a commercial edition, Nomad Enterprise, is also offered.
Key features
- 01Runs Docker and Podman containers, plus executables, Java apps, and QEMU virtual machines.
- 02Ships as a single binary with no external storage or coordination service required.
- 03Provides high availability through leader election and state replication.
- 04Detects GPUs, FPGAs, and TPUs through device plugins.
- 05Supports federation across multiple regions and clouds.
- 06Integrates with Terraform, Consul, and Vault.
Use cases
- Running containers and legacy or batch applications together on the same infrastructure.
- Deploying GPU-backed machine learning or AI workloads on a managed cluster.
- Operating a multi-region or multi-cloud application fleet with a single control plane.
- Replacing a heavier orchestrator when a simpler, self-contained scheduler is preferred.
Quick start
- 1
Read the Getting Started tutorials to set up a local Nomad cluster for non-production use
- 2
Optionally, use the Terraform manifests in the terraform directory to bring up a development cluster on a public cloud
Things to know
- Licensed under BUSL-1.1, which is a source-available license and not an OSI-approved open-source license.
- The metadata shows no clear license (NOASSERTION), so check the LICENSE file before commercial use.
- The full commercial feature set is available only in Nomad Enterprise.
In collections
Topics
FAQ
- What is nomad?
- A workload orchestrator that schedules and runs containers, VMs, and legacy binaries across on-prem and cloud infrastructure. Nomad is a workload orchestrator from HashiCorp that deploys and manages containers, non-containerized applications, and virtual machines across on-premises and cloud infrastructure. It uses pluggable task drivers, including Docker, Podman, exec, Java, and QEMU, so legacy and batch applications can run alongside containers on the same cluster without being containerized first.
- Is nomad free to use? What license does it have?
- nomad is open source under the Other license. Check the license terms before using it in commercial products.
- Is nomad still maintained?
- Actively maintained. The last commit to nomad was on Oct 23, 2026.
- What can I use nomad for?
- Running containers and legacy or batch applications together on the same infrastructure. Deploying GPU-backed machine learning or AI workloads on a managed cluster. Operating a multi-region or multi-cloud application fleet with a single control plane. Replacing a heavier orchestrator when a simpler, self-contained scheduler is preferred.
- How do I install nomad?
- Read the Getting Started tutorials to set up a local Nomad cluster for non-production use Optionally, use the Terraform manifests in the terraform directory to bring up a development cluster on a public cloud
- Where can I get nomad?
- The source code and installation instructions are on GitHub: https://github.com/hashicorp/nomad
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A tool that runs a local single-node or multi-node Kubernetes cluster on macOS, Linux, and Windows for application development.
Open source system for deploying, scaling and managing containerized applications across multiple hosts.
A CLI tool for defining and running multi-container Docker applications from a single Compose file.
Open source container management platform for running Kubernetes clusters across many environments in production.
Deploys and scales containerised apps across your own Docker hosts over a WireGuard mesh, without Kubernetes or Swarm.