2015-09-29 22:55:23 +00:00
|
|
|
---
|
|
|
|
layout: "docs"
|
|
|
|
page_title: "Drivers: Rkt"
|
|
|
|
sidebar_current: "docs-drivers-rkt"
|
|
|
|
description: |-
|
2015-11-17 23:39:38 +00:00
|
|
|
The rkt task driver is used to run application containers using rkt.
|
2015-09-29 22:55:23 +00:00
|
|
|
---
|
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
# Rkt Driver - Experimental
|
2015-09-29 22:55:23 +00:00
|
|
|
|
|
|
|
Name: `rkt`
|
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
The `rkt` driver provides an interface for using CoreOS rkt for running
|
2015-12-22 18:37:45 +00:00
|
|
|
application containers. Currently, the driver supports launching containers but
|
|
|
|
does not support dynamic ports. This can lead to port conflicts and as such,
|
|
|
|
this driver is being marked as experimental and should be used with care.
|
2015-09-29 22:55:23 +00:00
|
|
|
|
|
|
|
## Task Configuration
|
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
The `rkt` driver supports the following configuration in the job spec:
|
2015-09-29 22:55:23 +00:00
|
|
|
|
2015-11-18 23:16:42 +00:00
|
|
|
* `image` - The image to run which may be specified by name, hash, ACI address
|
|
|
|
or docker registry.
|
|
|
|
|
|
|
|
* `command` - (Optional) A command to execute on the ACI.
|
|
|
|
|
2016-01-11 19:12:09 +00:00
|
|
|
* `args` - (Optional) A list of arguments to the optional `command`.
|
|
|
|
References to environment variables or any [intepretable Nomad
|
2016-02-06 23:34:21 +00:00
|
|
|
variables](/docs/jobspec/interpreted.html) will be interpreted
|
2016-01-11 19:12:09 +00:00
|
|
|
before launching the task. For example:
|
|
|
|
|
|
|
|
```
|
2016-02-06 23:34:21 +00:00
|
|
|
args = ["${nomad.datacenter}", "${MY_ENV}", ${meta.foo}"]
|
2016-01-11 19:12:09 +00:00
|
|
|
```
|
2015-11-18 23:16:42 +00:00
|
|
|
|
|
|
|
* `trust_prefix` - (Optional) The trust prefix to be passed to rkt. Must be
|
|
|
|
reachable from the box running the nomad agent. If not specified, the image is
|
|
|
|
run without verifying the image signature.
|
2015-09-29 22:55:23 +00:00
|
|
|
|
2016-03-08 05:28:24 +00:00
|
|
|
* `dns_servers` - (Optional) A list of DNS servers to be used in the containers
|
|
|
|
|
|
|
|
* `dns_search_domains` - (Optional) A list of DNS search domains to be used in
|
|
|
|
the containers
|
|
|
|
|
2015-10-16 00:55:26 +00:00
|
|
|
## Task Directories
|
|
|
|
|
2015-11-26 23:10:12 +00:00
|
|
|
The `rkt` driver currently does not support mounting of the `alloc/` and `local/` directory.
|
|
|
|
Once support is added, version `v0.10.0` or above of `rkt` will be required.
|
2015-10-16 00:55:26 +00:00
|
|
|
|
2015-09-29 22:55:23 +00:00
|
|
|
## Client Requirements
|
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
The `rkt` driver requires rkt to be installed and in your systems `$PATH`.
|
2015-09-29 22:55:23 +00:00
|
|
|
The `trust_prefix` must be accessible by the node running Nomad. This can be an
|
|
|
|
internal source, private to your cluster, but it must be reachable by the client
|
|
|
|
over HTTP.
|
|
|
|
|
|
|
|
## Client Attributes
|
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
The `rkt` driver will set the following client attributes:
|
2015-09-29 22:55:23 +00:00
|
|
|
|
2015-11-17 23:39:38 +00:00
|
|
|
* `driver.rkt` - Set to `1` if rkt is found on the host node. Nomad determines
|
2015-09-29 22:55:23 +00:00
|
|
|
this by executing `rkt version` on the host and parsing the output
|
2015-12-22 18:35:25 +00:00
|
|
|
* `driver.rkt.version` - Version of `rkt` eg: `0.8.1`. Note that the minimum required
|
|
|
|
version is `0.14.0`
|
2015-09-29 22:55:23 +00:00
|
|
|
* `driver.rkt.appc.version` - Version of `appc` that `rkt` is using eg: `0.8.1`
|
|
|
|
|
|
|
|
## Resource Isolation
|
|
|
|
|
2015-12-22 18:35:25 +00:00
|
|
|
This driver supports CPU and memory isolation by delegating to `rkt`. Network isolation
|
|
|
|
is not supported as of now.
|