Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-32010

Container start command option - Argument parsing

    Details

    • Similar Issues:

      Description

      This bug concerns container start commands with one or more command line options.

      If a container is run from command line like :

      docker run -it <image_hash> "tail -n 20 /etc/passwd"
      

      the "tail -n 20 /etc/passwd" command is interpreted as:

          "Path": "/bin/sh",
          "Args": [
              "-c",
              "tail -n 20 /etc/passwd"
          ],
      

      However if I add the same command without quotes in "Container start command" option it is interpreted as :

          "Path": "/bin/sh",
          "Args": [
              "-c",
              "tail",
              "-n",
              "20",
              "/etc/passwd"
          ],
      

      If I enclose the command in single or double quotes the problem remains since the command is interpreted as (example using single quotes) :

          "Path": "/bin/sh",
          "Args": [
              "-c",
              "'tail",
              "-n",
              "20",
              "/etc/passwd'"
          ],
      

      Both cases result in errors and the container does not start. I searched through the documentation but there are no recommendations regarding this option.

        Attachments

          Activity

          Hide
          ndeloof Nicolas De Loof added a comment -

          why do you need to pass such a start command ? This is an advanced feature for people who need to start some subprocess as part of the container (which is wrong way to use docker imho, but anyway ...)
          simple workaround is for you to wrap this into a shell script inside your image.

          Show
          ndeloof Nicolas De Loof added a comment - why do you need to pass such a start command ? This is an advanced feature for people who need to start some subprocess as part of the container (which is wrong way to use docker imho, but anyway ...) simple workaround is for you to wrap this into a shell script inside your image.
          Hide
          zubu Paris Zoumpouloglou added a comment - - edited

          This command is just an example

          The general problem is that the plugin cannot parse a command with command line options.

          In my case I want the image to be re-used in different jobs, whose start commands will differ. Since Docker accepts command line options, I believe this feature should support them too.

          Show
          zubu Paris Zoumpouloglou added a comment - - edited This command is just an example The general problem is that the plugin cannot parse a command with command line options. In my case I want the image to be re-used in different jobs, whose start commands will differ. Since Docker accepts command line options, I believe this feature should support them too.

            People

            • Assignee:
              Unassigned
              Reporter:
              zubu Paris Zoumpouloglou
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: