Use git url fragment to specify reference and dir context.
Signed-off-by: David Calavera <david.calavera@gmail.com>
This commit is contained in:
parent
c6bcaacce7
commit
bbfd8f5e04
@ -659,6 +659,29 @@ After the command succeeds, the directory is sent to the Docker daemon as the co
|
|||||||
Local clones give you the ability to access private repositories using
|
Local clones give you the ability to access private repositories using
|
||||||
local user credentials, VPN's, and so forth.
|
local user credentials, VPN's, and so forth.
|
||||||
|
|
||||||
|
Git URLs accept context configuration in their fragment section, separated by a colon `:`.
|
||||||
|
The first part represents the reference that Git will check out, this can be either
|
||||||
|
a branch, a tag, or a commit SHA. The second part represents a subdirectory
|
||||||
|
inside the repository that will be used as a build context.
|
||||||
|
|
||||||
|
For example, run this command to use a directory called `docker` in the branch `container`:
|
||||||
|
|
||||||
|
$ docker build https://github.com/docker/rootfs.git#container:docker
|
||||||
|
|
||||||
|
The following table represents all the valid suffixes with their build contexts:
|
||||||
|
|
||||||
|
Build Syntax Suffix | Commit Used | Build Context Used
|
||||||
|
--------------------|-------------|-------------------
|
||||||
|
`myrepo.git` | `refs/heads/master` | `/`
|
||||||
|
`myrepo.git#mytag` | `refs/tags/mytag` | `/`
|
||||||
|
`myrepo.git#mybranch` | `refs/heads/mybranch` | `/`
|
||||||
|
`myrepo.git#abcdef` | `sha1 = abcdef` | `/`
|
||||||
|
`myrepo.git#:myfolder` | `refs/heads/master` | `/myfolder`
|
||||||
|
`myrepo.git#master:myfolder` | `refs/heads/master` | `/myfolder`
|
||||||
|
`myrepo.git#mytag:myfolder` | `refs/tags/mytag` | `/myfolder`
|
||||||
|
`myrepo.git#mybranch:myfolder` | `refs/heads/mybranch` | `/myfolder`
|
||||||
|
`myrepo.git#abcdef:myfolder` | `sha1 = abcdef` | `/myfolder`
|
||||||
|
|
||||||
Instead of specifying a context, you can pass a single Dockerfile in the
|
Instead of specifying a context, you can pass a single Dockerfile in the
|
||||||
`URL` or pipe the file in via `STDIN`. To pipe a Dockerfile from `STDIN`:
|
`URL` or pipe the file in via `STDIN`. To pipe a Dockerfile from `STDIN`:
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user