This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
dagger/docs/guides/1223-custom-buildkit.md
guillaume 1157561f1d Docs: 1223-custom-buildkit improvement
Add connection steps to remote buildkitd running in Docker

Signed-off-by: guillaume <guillaume.derouville@gmail.com>
2022-04-08 11:47:38 +02:00

1.7 KiB

slug
/1223/custom-buildkit/

Customizing your Buildkit installation

Using a custom buildkit daemon

Dagger can be configured to use an existing buildkit daemon, running either locally or remotely. This can be done using the environment variable BUILDKIT_HOST.

To use a buildkit daemon listening on TCP port 1234 on localhost:

export BUILDKIT_HOST=tcp://localhost:1234

To use a buildkit daemon running in a container named "super-buildkit" on the local docker host:

export BUILDKIT_HOST=docker-container://super-buildkit

Using a custom remote buildkit running in Docker

Dagger can also be configured to use a remote buildkit daemon running in a Docker container. This an be done using the environment variable DOCKER_HOST.

export DOCKER_HOST=ssh://user@IP

You will also need to set the BUILDKIT_HOST environment variable explained above.

Running a custom buildkit container in Docker

To run a customized Buildkit version with Docker, this can be done using the below command:

docker run -d --name dagger-buildkitd --privileged --network=host docker.io/moby/buildkit:latest

OpenTracing Support

Both Dagger and buildkit support opentracing. To capture traces to Jaeger, set the JAEGER_TRACE environment variable to the collection address.

A docker-compose file is available to help bootstrap the tracing environment:

docker-compose -f ./dagger-main/tracing.compose.yaml up -d
export JAEGER_TRACE=localhost:6831
export BUILDKIT_HOST=docker-container://dagger-buildkitd-jaeger

dagger up

You can then go to http://localhost:16686/ in your browser to see the traces.