open-nomad/website/source/docs/drivers/rkt.html.md

71 lines
2.5 KiB
Markdown
Raw Normal View History

2015-09-29 22:55:23 +00:00
---
layout: "docs"
page_title: "Drivers: Rkt"
sidebar_current: "docs-drivers-rkt"
description: |-
The rkt task driver is used to run application containers using rkt.
2015-09-29 22:55:23 +00:00
---
# Rkt Driver - Experimental
2015-09-29 22:55:23 +00:00
Name: `rkt`
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
The `rkt` driver supports the following configuration in the job spec:
2015-09-29 22:55:23 +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
```
* `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
* `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
## 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-09-29 22:55:23 +00:00
## Client Requirements
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
The `rkt` driver will set the following client attributes:
2015-09-29 22:55:23 +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.