--- layout: docs page_title: 'Commands: alloc restart' description: | Restart a running allocation or task --- # Command: alloc restart The `alloc restart` command allows a user to perform an in place restart of an an entire allocation or individual task. ## Usage ```plaintext nomad alloc restart [options] ``` This command accepts a single allocation ID and a task name. The task name must be part of the allocation and the task must be currently running. The task name is optional and if omitted all tasks that are currently running will be restarted. Task name may also be specified using the `-task` option rather than a command argument. If task name is given with both an argument and the `-task` option, preference is given to the `-task` option. Use the option `-all-tasks` to restart tasks that have already run, such as non-sidecar prestart and poststart tasks. When ACLs are enabled, this command requires a token with the `alloc-lifecycle`, `read-job`, and `list-jobs` capabilities for the allocation's namespace. ## General Options @include 'general_options.mdx' ## Restart Options - `-all-tasks`: If set, all tasks in the allocation will be restarted, even the ones that already ran. This option cannot be used with `-task` or the `` argument. - `-task`: Specify the individual task to restart. This option cannot be used with `-all-tasks`. - `-verbose`: Display verbose output. ## Examples ```shell-session $ nomad alloc restart eb17e557 $ nomad alloc restart eb17e557 foo Could not find task named: foo, found: * test ``` Specifying task name with the `-task` option: ```shell-session $ nomad alloc restart -task redis eb17e557 ``` If task name is specified using both options, the command argument is ignored. The following will restart the "redis" task only, not the "api" task: ```shell-session $ nomad alloc restart -task redis eb17e557 api ```