title: Running Docker commands that require user input with the Golang SDK
body: <p>I am creating a service which programmatically creates and runs an OpenVPN Docker container (<a href="https://hub.docker.com/r/pschiffe/openvpn/" rel="nofollow noreferrer">pschiffe/openvpn</a> which extends <a href="https://hub.docker.com/r/kylemanna/openvpn/" rel="nofollow noreferrer">kylemanna/openvpn</a>) using the Golang SDK.</p>
  
  <p>At some point in the process, the command <code>easyrsa init-pki</code> is ran in the <code>ovpn_initpki</code> script, which requires user input (typing "yes") to proceed. Is there any way using the SDK that I can either override this or programmatically input "yes" when it's required?</p>
  
  <p>Code currently (error handling removed):</p>
  
  <pre><code>ctx := context.Context()
  cli := client.NewClientWithOpts(client.WithAPIVersionNegotiation())
  
  // pull image
  
  // create volume
  
  resp := cli.ContainerCreate(
      ctx,
      &amp;container.Config{
          Image: "pschiffe/openvpn",
          Cmd: []string{"openvpn_initpki"}
          Env: []string{"CA_KEY=xxxxxx","CA_CN=xxxxxx"},
      },
      &amp;container.HostConfig{
          Mounts: []mount.Mount{
              {
                  Type: mount.TypeVolume,
                  Source: "volume_name",
                  Target: "/etc/openvpn",
              },
          },
     }, nil, "")
  
  cli.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{})
  </code></pre>