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

Gilbert Song commented on MESOS-8497:
-------------------------------------

The root cause is here: 
[https://github.com/apache/mesos/blob/1.5.0-rc1/src/docker/docker.cpp#L1083~#L1090]

We define the name before the parameters, so the user defined `–name` from the 
parameters will overwrite the name Mesos gives to the docker container 
(background: Mesos relies on --name to identify docker containers, the docker 
container is named by Mesos as `mesos-<ContainerUUID>`). So any new names 
passed into the parameters will result in Mesos could no longer find this 
container.

Two solutions:
1. Validate the parameters in master::validate(), to make sure no --name exists 
in docker arbitrary parameters.
2. Return failure on docker containerizer if the name is overwritten by any 
other.

#1 might be a preferable and straight forward solution.

> Docker parameter `name` does not work with Docker Containerizer.
> ----------------------------------------------------------------
>
>                 Key: MESOS-8497
>                 URL: https://issues.apache.org/jira/browse/MESOS-8497
>             Project: Mesos
>          Issue Type: Bug
>            Reporter: Jörg Schad
>            Priority: Major
>         Attachments: agent.log, master.log
>
>
> When deploying a marathon app with Docker Containerizer (need to check Mesos 
> Containerizer) and the parameter name set, Mesos is not able to 
> recognize/control/kill the started container.
> Steps to reproduce 
>  # Deploy the below marathon app definition
>  #  Watch task being stuck in staging and mesos not being able to kill it
>  # Check on node and see container running, but not being recognized by mesos
> {noformat}
> {
> "id": "/docker-test",
> "instances": 1,
> "portDefinitions": [],
> "container": {
> "type": "DOCKER",
> "volumes": [],
> "docker": {
> "image": "ubuntu:16.04",
> "parameters": [
> {
> "key": "name",
> "value": "myname"
> }
> ]
> }
> },
> "cpus": 0.1,
> "mem": 128,
> "requirePorts": false,
> "networks": [],
> "healthChecks": [],
> "fetch": [],
> "constraints": [],
> "cmd": "sleep 1000"
> }
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to