Virtual Event
Join us for the next HashiConf Digital October 12-15, 2020 Register for Free

Getting Started

Getting Started: Install Nomad

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.

»Install Nomad

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 nomad binary 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 PATH.

»Verify the Installation

To verify Nomad was installed correctly, try the nomad command.

$ nomad

You should see help output, similar to the following.

Usage: nomad [-version] [-help] [-autocomplete-(un)install] <command> [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 Vagrantfile 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.

»Next Steps

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.