[jira] [Commented] (MESOS-6048) Docker execution fails if agent's workdir is a relative path

2016-09-22 Thread Greg Mann (JIRA)

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

Greg Mann commented on MESOS-6048:
--

[~klaus1982] yes, I agree! It would be really lovely to refactor 
{{Flags.load}}, I'm happy to participate :) I see you created MESOS-3454 to 
track this, thanks!

> Docker execution fails if agent's workdir is a relative path
> 
>
> Key: MESOS-6048
> URL: https://issues.apache.org/jira/browse/MESOS-6048
> Project: Mesos
>  Issue Type: Bug
>Affects Versions: 1.0.0
> Environment: openSUSE Tumbleweed, Docker 1.11.2
>Reporter: Tobias Pfeiffer
>Assignee: Greg Mann
>Priority: Minor
>
> I start my mesos-agent.sh for development purposes like
> {code}
> sudo ./bin/mesos-agent.sh --master=127.0.0.1:5050 \
>   --work_dir=../../tmp --containerizers=docker \
>   --no-systemd_enable_support
> {code}
> And when executing a task via the Python API like
> {code}
> task.command.value = "echo foobar; hostname"
> task.container.type = 1 # docker
> task.container.docker.image = "phusion/baseimage:0.9.19"
> {code}
> then this fails with the following error message:
> {noformat}
> I0816 17:04:48.799820  9105 docker.cpp:809] Running docker -H 
> unix:///var/run/docker.sock run --cpu-shares 1024 --memory 1234567 -e 
> MESOS_SANDBOX=/mnt/mesos/sandbox -e 
> MESOS_CONTAINER_NAME=mesos-bc638eef-caf2-4778-a762-58826ea40364-S3.8386e2e0-6f40-47e2-9022-069b9f52b051
>  -v 
> ../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051:/mnt/mesos/sandbox
>  --net host --entrypoint /bin/sh --name 
> mesos-bc638eef-caf2-4778-a762-58826ea40364-S3.8386e2e0-6f40-47e2-9022-069b9f52b051
>  phusion/baseimage:0.9.19 -c echo foobar; hostname
> docker: Error response from daemon: create 
> ../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051:
>  
> "../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051"
>  includes invalid characters for a local volume name, only 
> "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed.
> {noformat}
> In short: Relative paths are not allowed for mounting host directories into 
> Docker containers. I suggest that the agent should turn the work directory 
> into an abspath before passing it to the `-v` parameter of docker.



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


[jira] [Commented] (MESOS-6048) Docker execution fails if agent's workdir is a relative path

2016-09-22 Thread Klaus Ma (JIRA)

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

Klaus Ma commented on MESOS-6048:
-

[~greggomann] , I used to propose a PR; but after sync up JIe/Micheal, we'd 
suggest to refactor {{Flags.load}} firstly, there're ~20 override functions 
here.

> Docker execution fails if agent's workdir is a relative path
> 
>
> Key: MESOS-6048
> URL: https://issues.apache.org/jira/browse/MESOS-6048
> Project: Mesos
>  Issue Type: Bug
>Affects Versions: 1.0.0
> Environment: openSUSE Tumbleweed, Docker 1.11.2
>Reporter: Tobias Pfeiffer
>Assignee: Greg Mann
>Priority: Minor
>
> I start my mesos-agent.sh for development purposes like
> {code}
> sudo ./bin/mesos-agent.sh --master=127.0.0.1:5050 \
>   --work_dir=../../tmp --containerizers=docker \
>   --no-systemd_enable_support
> {code}
> And when executing a task via the Python API like
> {code}
> task.command.value = "echo foobar; hostname"
> task.container.type = 1 # docker
> task.container.docker.image = "phusion/baseimage:0.9.19"
> {code}
> then this fails with the following error message:
> {noformat}
> I0816 17:04:48.799820  9105 docker.cpp:809] Running docker -H 
> unix:///var/run/docker.sock run --cpu-shares 1024 --memory 1234567 -e 
> MESOS_SANDBOX=/mnt/mesos/sandbox -e 
> MESOS_CONTAINER_NAME=mesos-bc638eef-caf2-4778-a762-58826ea40364-S3.8386e2e0-6f40-47e2-9022-069b9f52b051
>  -v 
> ../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051:/mnt/mesos/sandbox
>  --net host --entrypoint /bin/sh --name 
> mesos-bc638eef-caf2-4778-a762-58826ea40364-S3.8386e2e0-6f40-47e2-9022-069b9f52b051
>  phusion/baseimage:0.9.19 -c echo foobar; hostname
> docker: Error response from daemon: create 
> ../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051:
>  
> "../../tmp/slaves/bc638eef-caf2-4778-a762-58826ea40364-S3/frameworks/bc638eef-caf2-4778-a762-58826ea40364-0011/executors/0/runs/8386e2e0-6f40-47e2-9022-069b9f52b051"
>  includes invalid characters for a local volume name, only 
> "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed.
> {noformat}
> In short: Relative paths are not allowed for mounting host directories into 
> Docker containers. I suggest that the agent should turn the work directory 
> into an abspath before passing it to the `-v` parameter of docker.



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