Hi Andrew, By default shell is enabled, which wraps your command in bin/sh and single quotes.
Try passing shell false to marathon. Tim Sent from my iPhone > On Oct 29, 2014, at 4:44 AM, Andrew Jones <[email protected]> > wrote: > > Hi, > > I'm trying to run a Docker image which has a defined entrypoint and pass > args to it. It looks like when the args are passed to docker run, they > are surrounded by single quotes. > > The image I am trying to run is tomaskral/chronos, and this is the > configuration I am giving to Marathon: > > { > "id": "chronos-test-2", > "container": { > "docker": { > "image": "tomaskral/chronos", > "network": "BRIDGE", > "portMappings": [ > { > "containerPort": 8080, > "hostPort": 0, > "servicePort": 31000, > "protocol": "tcp" > } > ] > }, > "type": "DOCKER", > "volumes": [] > }, > "ports":[31000], > "args": ["--master zk://...:2181/mesos --zk_hosts zk:/...:2181"], > "cpus": 0.2, > "mem": 256.0, > "instances": 1 > } > > And this is an extract from the log from Mesos when the image is ran: > > + logged chronos run_jar '--master zk://...:2181/mesos --zk_hosts > zk://...:2181' > > The argument has single quotes around it. run_jar is calling java, which > cannot handle the quotes, and the process isn't starting. > > If I run the image locally with docker run like this, it works: > > docker run -p 8080:8080 tomaskral/chronos --master zk://...:2181/mesos > --zk_hosts zk://...:2181 > > But adding quotes, like this, and I get the same output as I did from > Mesos: > > docker run -p 8080:8080 tomaskral/chronos '--master zk://...:2181/mesos > --zk_hosts zk://...:2181' > > So I think these quotes are being added by either Marathon or Mesos when > calling docker run, which the java command inside the container can't > handle. > > Is it Mesos or Marathon adding the quotes? Is this something that should > be fixed, or should the docker images expect this and cope? > > This is Mesos 0.21.1 and Marathon 0.7.3. I have also asked the author of > the image for help (https://github.com/kadel/Dockerfiles/issues/3). > > Thanks, > Andrew

