Jay Buffington created AURORA-633:
-------------------------------------
Summary: Support running Docker containers
Key: AURORA-633
URL: https://issues.apache.org/jira/browse/AURORA-633
Project: Aurora
Issue Type: Epic
Components: Client, Scheduler
Reporter: Jay Buffington
Mesos 0.20 will be released soon, and it will likely include support for a
docker containerizer. See MESOS-1524.
To make use of this feature, I propose modifying aurora's DSL to support
running docker containers both with and without the aurora executor.
Task would be changed to introduce a container field and make processes
optional when a container is specified. A Task to launch a Docker container
using the entry point (aka command) specified in the container would look like
this:
{noformat}
Task(
name="my-task",
container=Docker(
image="docker:///centos:6u5',
),
resources=Resources(cpu=1, disk=10*GB, ram=1*GB)
)
{noformat}
If you specify processes in your Task then the docker containerizer will fetch
and launch the aurora executor for you. This would run {{process_a}} then
{{process_b}} inside the same docker container using the aurora executor:
{noformat}
Task(
name="my-task",
container=Docker(
image="docker:///centos:6u5',
),
processes=[process_a, process_b],
constraints=order(process_a, process_b),
resources=Resources(cpu=1, disk=10*GB, ram=1*GB)
)
{noformat}
The Docker() struct would closely model the fields that will be in the
DockerInfo protobuf message detailed here:
https://github.com/tnachen/mesos/wiki/DockerInfo-design
--
This message was sent by Atlassian JIRA
(v6.2#6252)