adding documentation for base image caching (#421)
* adding documentation for base image caching * add --cache-repo to list of params
This commit is contained in:
parent
6ef616b8b2
commit
3c100508b6
23
README.md
23
README.md
|
|
@ -210,6 +210,8 @@ We can run the kaniko executor image locally in a Docker daemon to build and pus
|
||||||
```
|
```
|
||||||
|
|
||||||
### Caching
|
### Caching
|
||||||
|
|
||||||
|
#### Caching Layers
|
||||||
kaniko currently can cache layers created by `RUN` commands in a remote repository.
|
kaniko currently can cache layers created by `RUN` commands in a remote repository.
|
||||||
Before executing a command, kaniko checks the cache for the layer.
|
Before executing a command, kaniko checks the cache for the layer.
|
||||||
If it exists, kaniko will pull and extract the cached layer instead of executing the command.
|
If it exists, kaniko will pull and extract the cached layer instead of executing the command.
|
||||||
|
|
@ -219,6 +221,21 @@ Users can opt in to caching by setting the `--cache=true` flag.
|
||||||
A remote repository for storing cached layers can be provided via the `--cache-repo` flag.
|
A remote repository for storing cached layers can be provided via the `--cache-repo` flag.
|
||||||
If this flag isn't provided, a cached repo will be inferred from the `--destination` provided.
|
If this flag isn't provided, a cached repo will be inferred from the `--destination` provided.
|
||||||
|
|
||||||
|
#### Caching Base Images
|
||||||
|
kaniko can cache images in a local directory that can be volume mounted into the kaniko image.
|
||||||
|
To do so, the cache must first be populated, as it is read-only. We provide a kaniko cache warming
|
||||||
|
image at `gcr.io/kaniko-project/warmer`:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
docker run -v $(pwd):/workspace gcr.io/kaniko-project/warmer:latest --cache-dir=/workspace/cache --image=<image to cache> --image=<another image to cache>
|
||||||
|
```
|
||||||
|
|
||||||
|
`--image` can be specified for any number of desired images.
|
||||||
|
This command will cache those images by digest in a local directory named `cache`.
|
||||||
|
Once the cache is populated, caching is opted into with the same `--cache=true` flag as above.
|
||||||
|
The location of the local cache is provided via the `--cache-dir` flag, defaulting at `/cache` as with the cache warmer.
|
||||||
|
See the `examples` directory for how to use with kubernetes clusters and persistent cache volumes.
|
||||||
|
|
||||||
### Pushing to Different Registries
|
### Pushing to Different Registries
|
||||||
|
|
||||||
kaniko uses Docker credential helpers to push images to a registry.
|
kaniko uses Docker credential helpers to push images to a registry.
|
||||||
|
|
@ -345,6 +362,12 @@ If `--destination=gcr.io/kaniko-project/test`, then cached layers will be stored
|
||||||
|
|
||||||
_This flag must be used in conjunction with the `--cache=true` flag._
|
_This flag must be used in conjunction with the `--cache=true` flag._
|
||||||
|
|
||||||
|
#### --cache-dir
|
||||||
|
|
||||||
|
Set this flag to specify a local directory cache for base images. Defaults to `/cache`.
|
||||||
|
|
||||||
|
_This flag must be used in conjunction with the `--cache=true` flag._
|
||||||
|
|
||||||
#### --cleanup
|
#### --cleanup
|
||||||
|
|
||||||
Set this flag to cleanup the filesystem at the end, leaving a clean kaniko container (if you want to build multiple images in the same container, using the debug kaniko image)
|
Set this flag to cleanup the filesystem at the end, leaving a clean kaniko container (if you want to build multiple images in the same container, using the debug kaniko image)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue