8a41419b94
This optimizes our image in a few different ways: - It adds a bunch of files and directories to the `.dockerignore` file. This lets us have a single `COPY . .` but still be very aggressive about pruning what files end up in the build context. - It adds build-time cache mounts to the `go build` commands using BuildKit's `--mount=type=cache` flag. This requires BuildKit-capable Docker, but means that our Go builds can all be incremental builds. This replaces the previous flow we had where we needed to split out `go mod download`. - Instead of letting the full `apt-get install ca-certificates` layer end up in our final image, we copy just the single file we need. Signed-off-by: Matt Moyer <moyerm@vmware.com>
13 lines
138 B
Plaintext
13 lines
138 B
Plaintext
./.*
|
|
./*.md
|
|
./*.yaml
|
|
./apis
|
|
./deploy
|
|
./Dockerfile
|
|
./generated/1.1*
|
|
./hack/lib/tilt/
|
|
./internal/mocks
|
|
./LICENSE
|
|
./site/
|
|
./test
|
|
**/*_test.go |