-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Only send the build context for changed files to the Docker daemon #195
Comments
FYI: Perhaps the recent improvement in docker for sending build context incrementally would help. |
Since docker v17.07, there's an experimental |
There are also a few optimizations we can do to only send changed files during a cloud build. |
AFAICT the incremental upload API is still very experimental: https://docs.docker.com/engine/api/v1.36/#operation/Session and requires the daemon be started with specific flags. |
@dlorenc @dgageot Thx for the info! Just started playing with it: $ minikube delete && minikube start --memory 4096 --cpus 2 --docker-opt experimental
$ eval $(minikube docker-env)
$ DOCKER_API_VERSION=1.31 docker version
Client:
Version: 18.02.0-ce
API version: 1.31
Go version: go1.9.4
Git commit: fc4de44
Built: unknown-buildtime
OS/Arch: darwin/amd64
Experimental: false
Orchestrator: swarm
Server:
Engine:
Version: 17.09.0-ce
API version: 1.32 (minimum version 1.12)
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:45:38 2017
OS/Arch: linux/amd64
Experimental: true
$ DOCKER_API_VERSION=1.31 docker build --help | grep stream
--stream Stream attaches to server to negotiate build context |
What about a direct file sync phase like https://github.com/vapor-ware/ksync? |
This is how we could do it with GCB: https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher |
Let's close this one. It's possible to enable this feature by using |
Currently, the full build context is being sent to the minikube Docker daemon whenever a change is made. It'd be cool if we could somehow make it more intelligent by only sending files for the stages that are not cached/will need to rerun with the changes made.
The text was updated successfully, but these errors were encountered: