Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Change Summary
This PR adds a 'buildkit' build strategy, selected when the
--buildkit-addr
flag (orBUILDKIT_ADDR
env) is set.If a direct connection fails, the strategy attempts to connect through the target app's private network using a Wireguard agent.
What and Why:
Supports building images using a standard
buildkit
daemon, which may run separately from the Docker daemon.The main use-case is to build images on a stock
moby/buildkit
image, running in an app with a private IPv6 address connecting over Flycast. Seewjordan/buildkit
for a simple, fully-functional template in about 10 lines of config.How:
Since the Depot build strategy mostly uses a Buildkit client already, a lot of the existing code was able to be reused along with some boilerplate to fit the existing build strategy interfaces.
Documentation