Explorar el Código

We had some testers who found a hard to diagnose bug in Dockerfile

They used single-quotes (') in the exec-form of onbuild run command
and things blew up.  They asked to fix the man page to explain why.

Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan)
Dan Walsh hace 10 años
padre
commit
b3769f0ca6
Se han modificado 1 ficheros con 6 adiciones y 0 borrados
  1. 6 0
      docs/man/Dockerfile.5.md

+ 6 - 0
docs/man/Dockerfile.5.md

@@ -97,6 +97,9 @@ A Dockerfile is similar to a Makefile.
   exec form makes it possible to avoid shell string munging. The exec form makes
   exec form makes it possible to avoid shell string munging. The exec form makes
   it possible to **RUN** commands using a base image that does not contain `/bin/sh`.
   it possible to **RUN** commands using a base image that does not contain `/bin/sh`.
 
 
+  Note that the exec form is parsed as a JSON array, which means that you must
+  use double-quotes (") around words not single-quotes (').
+
 **CMD**
 **CMD**
   -- **CMD** has three forms:
   -- **CMD** has three forms:
 
 
@@ -120,6 +123,9 @@ A Dockerfile is similar to a Makefile.
   be executed when running the image.
   be executed when running the image.
   If you use the shell form of the **CMD**, the `<command>` executes in `/bin/sh -c`:
   If you use the shell form of the **CMD**, the `<command>` executes in `/bin/sh -c`:
 
 
+  Note that the exec form is parsed as a JSON array, which means that you must
+  use double-quotes (") around words not single-quotes (').
+
   ```
   ```
   FROM ubuntu
   FROM ubuntu
   CMD echo "This is a test." | wc -
   CMD echo "This is a test." | wc -