talk about the new exec form of RUN (Closes #3723) implemented by #3558

Docker-DCO-1.1-Signed-off-by: Sven Dowideit <SvenDowideit@fosiki.com> (github: SvenDowideit)
This commit is contained in:
Sven Dowideit 2014-01-23 14:00:16 +10:00 committed by Tibor Vass
parent 5bfb9bf093
commit c046828392
1 changed files with 10 additions and 4 deletions

View File

@ -147,17 +147,23 @@ the generated images.
3.3 RUN 3.3 RUN
------- -------
``RUN <command>`` RUN has 2 forms:
The ``RUN`` instruction will execute any commands on the current image * ``RUN <command>`` (the command is run in a shell - ``/bin/sh -c``)
and commit the results. The resulting committed image will be used for * ``RUN ["executable", "param1", "param2"]`` (*exec* form)
the next step in the Dockerfile.
The ``RUN`` instruction will execute any commands in a new layer on top
of the current image and commit the results. The resulting committed image
will be used for the next step in the Dockerfile.
Layering ``RUN`` instructions and generating commits conforms to the Layering ``RUN`` instructions and generating commits conforms to the
core concepts of Docker where commits are cheap and containers can be core concepts of Docker where commits are cheap and containers can be
created from any point in an image's history, much like source created from any point in an image's history, much like source
control. control.
The *exec* form makes it possible to avoid shell string munging, and to ``RUN``
commands using a base image that does not contain ``/bin/sh``.
Known Issues (RUN) Known Issues (RUN)
.................. ..................