dont close proxy's stdout/stderr prematurely

Fix #8428

When stdout/stderr is closed prematurely, the proxy's writes to stdout/stderr
(i.e. `log.Errorf/log.Printf`) will returns with EPIPE error, and go runtime
will terminate the proxy when stdout/stderr writes trigger 10 EPIPE errors.

This fixes stdout/stderr by continuing to drain their output if the proxy
successfully starts. Stdout/Stderr will be closed when `proxy.Wait` returns.

Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
i use a pipe here to make sure that `stdoutR.Read()` below will return the written output and not just empty buffer content.