command: docker buildx dial-stdio
short: Proxy current stdio streams to builder instance
long: |-
    dial-stdio uses the stdin and stdout streams of the command to proxy to the
    configured builder instance. It is not intended to be used by humans, but
    rather by other tools that want to interact with the builder instance via
    BuildKit API.
usage: docker buildx dial-stdio
pname: docker buildx
plink: docker_buildx.yaml
options:
    - option: platform
      value_type: string
      description: 'Target platform: this is used for node selection'
      deprecated: false
      hidden: false
      experimental: false
      experimentalcli: false
      kubernetes: false
      swarm: false
    - option: progress
      value_type: string
      default_value: none
      description: |
        Set type of progress output (`auto`, `plain`, `rawjson`, `tty`). Use plain to show container output
      deprecated: false
      hidden: false
      experimental: false
      experimentalcli: false
      kubernetes: false
      swarm: false
inherited_options:
    - option: builder
      value_type: string
      description: Override the configured builder instance
      deprecated: false
      hidden: false
      experimental: false
      experimentalcli: false
      kubernetes: false
      swarm: false
    - option: debug
      shorthand: D
      value_type: bool
      default_value: "false"
      description: Enable debug logging
      deprecated: false
      hidden: false
      experimental: false
      experimentalcli: false
      kubernetes: false
      swarm: false
examples: |-
    Example go program that uses the dial-stdio command wire up a buildkit client.
    This is, for example, use only and may not be suitable for production use.

    ```go
    client.New(ctx, "", client.WithContextDialer(func(context.Context, string) (net.Conn, error) {
        c1, c2 := net.Pipe()
        cmd := exec.Command("docker", "buildx", "dial-stdio")
        cmd.Stdin = c1
        cmd.Stdout = c1

        if err := cmd.Start(); err != nil {
            c1.Close()
            c2.Close()
            return nil, err
        }

        go func() {
            cmd.Wait()
            c2.Close()
        }()

        return c2
    }))
    ```
deprecated: false
hidden: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false

