@@ -604,7 +604,7 @@ func TestBuildTLS(t *testing.T) {
604604 c .RunDockerCmd (t , "context" , "rm" , dindBuilder )
605605 })
606606
607- c .RunDockerCmd (t , "run" , "--name" , dindBuilder , "--privileged" , "-p" , "2376 :2376" , "-d" , "docker:dind" )
607+ c .RunDockerCmd (t , "run" , "--name" , dindBuilder , "--privileged" , "-p" , "127.0.0.1: :2376" , "-d" , "docker:dind" )
608608
609609 poll .WaitOn (t , func (_ poll.LogT ) poll.Result {
610610 res := c .RunDockerCmd (t , "logs" , dindBuilder )
@@ -617,13 +617,19 @@ func TestBuildTLS(t *testing.T) {
617617 time .Sleep (1 * time .Second ) // wait for dind setup
618618 c .RunDockerCmd (t , "cp" , dindBuilder + ":/certs/client" , tmp )
619619
620+ res := c .RunDockerCmd (t , "inspect" , "-f" , "{{(index (index .NetworkSettings.Ports \" 2376/tcp\" ) 0).HostPort}}" , dindBuilder )
621+ hostPort := strings .TrimSpace (res .Stdout ())
622+ if hostPort == "" {
623+ t .Fatal ("failed to resolve mapped host port for 2376/tcp" )
624+ }
625+
620626 c .RunDockerCmd (t , "context" , "create" , dindBuilder , "--docker" ,
621- fmt .Sprintf ("host=tcp://localhost:2376 ,ca=%s/client/ca.pem,cert=%s/client/cert.pem,key=%s/client/key.pem,skip-tls-verify=1" , tmp , tmp , tmp ))
627+ fmt .Sprintf ("host=tcp://127.0.0.1:%s ,ca=%s/client/ca.pem,cert=%s/client/cert.pem,key=%s/client/key.pem,skip-tls-verify=1" , hostPort , tmp , tmp , tmp ))
622628
623629 cmd := c .NewDockerComposeCmd (t , "-f" , "fixtures/build-test/minimal/compose.yaml" , "build" )
624630 cmd .Env = append (cmd .Env , "DOCKER_CONTEXT=" + dindBuilder )
625631 cmd .Stdout = os .Stdout
626- res : = icmd .RunCmd (cmd )
632+ res = icmd .RunCmd (cmd )
627633 res .Assert (t , icmd.Expected {Err : "Built" })
628634}
629635
0 commit comments