[ 
https://issues.apache.org/jira/browse/MESOS-4572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15136559#comment-15136559
 ] 

popsuper1982 commented on MESOS-4572:
-------------------------------------

actually, we do use marathon and try to implement our own executor. 

but implementing our own executor has the following problems:
1. if we use marathon and set container info to the json, marathon will start 
my executor inside the container rather than let my executor create the docker
2. so if we want to use our own executor to create docker, we have to pass the 
container info with non-standard marathon json, that has problems when marathon 
upgrades
3. the docker created by mesos docker executor will be cleanup when deleted by 
the garbage collection thread, but the docker created by our own executor will 
not take part into the process, so we have to do lots of coding such as a 
cleanup process. we do not want to reinvent the wheel.
4. marathon implementation will be compatible with mesos docker executor when 
upgrading, but will not consider our own private implementation. (for example, 
cmd to rewrite the entrypoint rather than appending to the current entrypoint)

So that is why we want to contribute back to mesos docker container.

> docker executor should support preconfiguration and postconfiguration steps
> ---------------------------------------------------------------------------
>
>                 Key: MESOS-4572
>                 URL: https://issues.apache.org/jira/browse/MESOS-4572
>             Project: Mesos
>          Issue Type: Improvement
>          Components: docker
>            Reporter: popsuper1982
>   Original Estimate: 672h
>  Remaining Estimate: 672h
>
> there should be one way to execute some scripts before and after the docker 
> is created.
> Preconfiguration: for example, check the environments (IP addresses, 
> Hostnames, Bridges, Volume directories) of the hosts where docker will run, 
> and form the ENV for the docker and then run the docker with those 
> environments.
> Postconfiguration: for example, use pipework to configure the docker, get the 
> ports allocated and reports to another docker to configure relationships 
> between applications between dockers.
> another postconfiguration example, after docker is shutdown, cleanup some 
> data in the volumes 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to