b29cfa1fc3
Signed-off-by: rrylee <rrylee1994@gmail.com>
57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
---
|
|
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:
|
|
|
|
```shell
|
|
export BUILDKIT_HOST=tcp://localhost:1234
|
|
```
|
|
|
|
To use a buildkit daemon running in a container named "super-buildkit" on the local docker host:
|
|
|
|
```shell
|
|
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`.
|
|
|
|
```shell
|
|
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:
|
|
|
|
```shell
|
|
docker run -d --name dagger-buildkitd --privileged --network=host docker.io/moby/buildkit:latest
|
|
```
|
|
|
|
## OpenTelemetry Support
|
|
|
|
Both Dagger and buildkit support opentelemetry. To capture traces to
|
|
[Jaeger](https://github.com/jaegertracing/jaeger), set the `OTEL_EXPORTER_JAEGER_ENDPOINT` environment variable to the collection address.
|
|
|
|
A `docker-compose` file is available to help bootstrap the tracing environment:
|
|
|
|
```shell
|
|
docker-compose -f ./dagger-main/tracing.compose.yaml up -d
|
|
export BUILDKIT_HOST=docker-container://dagger-buildkitd-jaeger
|
|
export OTEL_EXPORTER_JAEGER_ENDPOINT=http://localhost:14268/api/traces
|
|
|
|
dagger up
|
|
```
|
|
|
|
You can then go to [http://localhost:16686/](http://localhost:16686/) in your browser to see the traces.
|