Browse code

Add some more specific help for Dockerfile build contexts.

I've copy and pasted the error message so its googlable.

Docker-DCO-1.1-Signed-off-by: SvenDowideit <SvenDowideit@home.org.au> (github: SvenDowideit)

SvenDowideit authored on 2014/05/13 12:38:11
Showing 1 changed files
... ...
@@ -201,7 +201,8 @@ and a "context".
201 201
 The files at `PATH` or `URL` are called the "context" of the build. The build
202 202
 process may refer to any of the files in the context, for example when using an
203 203
 [*ADD*](/reference/builder/#dockerfile-add) instruction. When a single Dockerfile is
204
-given as `URL`, then no context is set.
204
+given as `URL` or is piped through STDIN (`docker build - < Dockerfile`), then
205
+no context is set.
205 206
 
206 207
 When a Git repository is set as `URL`, then the
207 208
 repository is used as the context. The Git repository is cloned with its
... ...
@@ -283,6 +284,13 @@ repository is used as Dockerfile. Note that you
283 283
 can specify an arbitrary Git repository by using the `git://`
284 284
 schema.
285 285
 
286
+> **Note:** `docker build` will return a `no such file or directory` error
287
+> if the file or directory does not exist in the uploaded context. This may
288
+> happen if there is no context, or if you specify a file that is elsewhere 
289
+> on the Host system. The context is limited to the current directory (and its
290
+> children) for security reasons, and to ensure repeatable builds on remote
291
+> Docker hosts. This is also the reason why `ADD ../file` will not work.
292
+
286 293
 ## commit
287 294
 
288 295
 Create a new image from a container᾿s changes