Nomad is an orchestration tool for deploying and managing applications. It is flexible and can run either containerized or non-containerized workloads.
In these getting started guides, you will learn about Nomad's core capabilities by installing and running a local Nomad cluster.
Nomad is available as a pre-compiled binary or as a package for several operating systems.
To simplify the getting started experience, you can download a precompiled binary and run it on your machine locally.
After downloading Nomad, unzip the package. Make sure that the
is available on your
PATH, before continuing with the other guides.
You can check the locations available on your path by running this command.
$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
The output is a list of locations separated by colons. You can make Nomad
available by moving the binary to one of the listed locations, or by adding
Nomad's location to your
Tip (Linux-based or Mac): Permanently add a new location to your path by
editing your shell's settings file (usually called something like
where the part of the file name after the
. and before
rc is the name of
your shell). In that file you will see a line that starts with
followed by a colon-separated list of locations. Add the location of the Consul
binary to that list and save the file. Then reload your shell's configuration
with the command
source ~/.bashrc, replacing
bash with the name of your
Tip (Windows): Add a location to your path via the GUI by navigating to
Environment Variables in your system settings, and looking for the variable
PATH. You will see a semicolon-separated list of locations. Add the
Consul binary's location to that list and then launch a new console window.
»Verify the Installation
To verify Nomad was installed correctly, try the
You should see help output, similar to the following.
Usage: nomad [-version] [-help] [-autocomplete-(un)install]
[args] Common commands: run Run a new job or update an existing job stop Stop a running job status Display the status output for a resource alloc Interact with allocations job Interact with jobs node Interact with nodes agent Runs a Nomad agent Other commands: acl Interact with ACL policies and tokens agent-info Display status information about the local agent deployment Interact with deployments eval Interact with evaluations exec Execute commands in task monitor Stream logs from a Nomad agent namespace Interact with namespaces operator Provides cluster-level tools for Nomad operators quota Interact with quotas sentinel Interact with Sentinel policies server Interact with servers system Interact with the system API ui Open the Nomad Web UI version Prints the Nomad version
»Vagrant Setup (Optional)
Alternatively, you can use a Vagrant to set up a development environment for Nomad. Vagrant is a tool for building and managing virtual machine environments.
You can download a Vagrantfile which will start a small Nomad cluster. First create a new directory for your Vagrant environment.
$ mkdir nomad-demo
Change into the directory you made with the previous command.
$ cd nomad-demo
Now you can get the Nomad installation configuration.
$ curl -O https://raw.githubusercontent.com/hashicorp/nomad/master/demo/vagrant/Vagrantfile
Now that you have created a new directory and downloaded the
you must create the virtual machine with the
vagrant up command.
$ vagrant up
This will take a few minutes as the base Ubuntu box must be downloaded and provisioned with both Docker and Nomad. Once this completes, you should see this output.
Bringing machine 'default' up with 'virtualbox' provider... ==> default: Importing base box 'bento/ubuntu-18.04'... ... ==> default: Running provisioner: docker...
At this point the Vagrant box is running and ready to go. Once the Vagrant box
is running, use the
vagrant ssh command to start a shell session on it.
In this tutorial you installed Nomad on your local machine. Continue to the next guide where you will learn how to run the Nomad agent.