84 lines
2.6 KiB
Plaintext
84 lines
2.6 KiB
Plaintext
---
|
|
layout: "docs"
|
|
page_title: "Commands: run"
|
|
sidebar_current: "docs-commands-run"
|
|
description: >
|
|
The run command is used to run a new job.
|
|
---
|
|
|
|
# Command: run
|
|
|
|
The `run` command is used to submit new jobs to Nomad or to update existing
|
|
jobs. Job files must conform to the [job specification](/docs/jobspec/index.html)
|
|
format.
|
|
|
|
## Usage
|
|
|
|
```
|
|
nomad run [options] <file>
|
|
```
|
|
|
|
The run command requires a single argument, specifying the path to a file
|
|
containing a valid [job specification](/docs/jobspec/index.html). This file
|
|
will be read and the job will be submitted to Nomad for scheduling.
|
|
|
|
By default, on successful job submission the run command will enter an
|
|
interactive monitor and display log information detailing the scheduling
|
|
decisions and placement information for the provided job. The monitor will
|
|
exit after scheduling has finished or failed.
|
|
|
|
On successful job submission and scheduling, exit code 0 will be returned. If
|
|
there are job placement issues encountered (unsatisfiable constraints, resource
|
|
exhaustion, etc), then the exit code will be 2. Any other errors, including
|
|
client connection issues or internal errors, are indicated by exit code 1.
|
|
|
|
## General Options
|
|
|
|
<%= general_options_usage %>
|
|
|
|
## Run Options
|
|
|
|
* `-detach`: Return immediately instead of monitoring. A new evaluation ID
|
|
will be output, which can be used to call the monitor later using the
|
|
[eval-monitor](/docs/commands/eval-monitor.html) command.
|
|
|
|
* `-output`: Output the JSON that would be submitted to the HTTP API without
|
|
submitting the job.
|
|
|
|
## Status Options
|
|
|
|
* `-verbose`: Show full information.
|
|
|
|
## Examples
|
|
|
|
Schedule the job contained in the file `job1.nomad`, monitoring placement:
|
|
|
|
```
|
|
$ nomad run job1.nomad
|
|
==> Monitoring evaluation "52dee78a"
|
|
Allocation "5e0b39f0" created: node "3e84d3d2", group "group1"
|
|
Allocation "5e0b39f0" status changed: "pending" -> "running"
|
|
Evaluation status changed: "pending" -> "complete"
|
|
==> Evaluation "52dee78a" finished with status "complete"
|
|
```
|
|
|
|
Schedule the job contained in `job1.nomad` and return immediately:
|
|
|
|
```
|
|
$ nomad run -detach job1.nomad
|
|
4947e728
|
|
```
|
|
|
|
Schedule a job which cannot get placement. This results in a scheduling failure
|
|
and the specifics of the placement are printed:
|
|
|
|
```
|
|
$ nomad run failing.nomad
|
|
==> Monitoring evaluation "0d7447d9"
|
|
Scheduling error for group "group1" (failed to find a node for placement)
|
|
Allocation "a739288e" status "failed" (1/1 nodes filtered)
|
|
* Constraint "$attr.kernel.name = linux" filtered 1 nodes
|
|
Evaluation status changed: "pending" -> "complete"
|
|
==> Evaluation "0d7447d9" finished with status "complete"
|
|
```
|