77 lines
2.7 KiB
Plaintext
77 lines
2.7 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 sucessful 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.
|
|
|
|
## Examples
|
|
|
|
Schedule the job contained in the file `job1.nomad`, monitoring placement:
|
|
|
|
```
|
|
$ nomad run job1.nomad
|
|
==> Monitoring evaluation "52dee78a-a1f0-95c9-81a5-95b4cbe7f6f8"
|
|
Allocation "5e0b39f0-5e69-6fec-d17b-4b8b7d922cc8" created: node "3e84d3d2-8500-42a3-9d1b-7ad88913352b", group "group1"
|
|
Allocation "5e0b39f0-5e69-6fec-d17b-4b8b7d922cc8" status changed: "pending" -> "running"
|
|
Evaluation status changed: "pending" -> "complete"
|
|
==> Evaluation "52dee78a-a1f0-95c9-81a5-95b4cbe7f6f8" finished with status "complete"
|
|
```
|
|
|
|
Schedule the job contained in `job1.nomad` and return immediately:
|
|
|
|
```
|
|
$ nomad run -detach job1.nomad
|
|
4947e728-fb4e-90c6-895a-42479940e0bc
|
|
```
|
|
|
|
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-43fd-4994-6812-500c93c08fce"
|
|
Scheduling error for group "group1" (failed to find a node for placement)
|
|
Allocation "a739288e-547a-cd26-1355-e92ca10f165c" status "failed" (1/1 nodes filtered)
|
|
* Constraint "$attr.kernel.name = linux" filtered 1 nodes
|
|
Evaluation status changed: "pending" -> "complete"
|
|
==> Evaluation "0d7447d9-43fd-4994-6812-500c93c08fce" finished with status "complete"
|
|
```
|