Eugen Feller created MESOS-1816:
-----------------------------------
Summary: lxc execution driver for docker containerizer
Key: MESOS-1816
URL: https://issues.apache.org/jira/browse/MESOS-1816
Project: Mesos
Issue Type: Improvement
Components: containerization
Affects Versions: 0.20.1
Reporter: Eugen Feller
Hi all,
One way to get networking up and running in Docker is to use the bridge mode.
The bridge mode results in Docker automatically assigning IPs to the containers
from the IP range specified on the docker0 bridge.
In our setup we need to manage IPs using our own DHCP server. Unfortunately
this is not supported by Docker's libcontainer execution driver. Instead, the
lxc execution driver
(http://blog.docker.com/2014/03/docker-0-9-introducing-execution-drivers-and-libcontainer/)
can be used. In order to use the lxc execution driver, Docker daemon needs to
be started with the "-e lxc" flag. Once started, Docker own networking can be
disabled and lxc options can be passed to the docker run command. For example:
$ docker run -n=false --lxc-conf="lxc.network.type = veth"
--lxc-conf="lxc.network.link = br0" --lxc-conf="lxc.network.name = eth0"
-lxc-conf="lxc.network.flags = up"
This will force Docker to use my own bridge br0. Moreover, IP can be assigned
to the eth0 interface by executing the "dhclient eth0" command inside the
started container.
In the previous integration of Docker in Mesos (using Deimos), I have passed
the aforementioned options using the "options" flag in Marathon. However, with
the new changes this is no longer possible. It would be great to support the
lxc execution driver in the current Docker integration.
Thanks.
Best regards,
Eugen
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)