MCPcopy Create free account
hub / github.com/nginx-proxy/docker-gen / NewDockerClient

Function NewDockerClient

internal/dockerclient/docker_cli.go:32–45  ·  view source on GitHub ↗
(endpoint string, tlsVerify bool, tlsCert, tlsCaCert, tlsKey string)

Source from the content-addressed store, hash-verified

30}
31
32func NewDockerClient(endpoint string, tlsVerify bool, tlsCert, tlsCaCert, tlsKey string) (*docker.Client, error) {
33 if strings.HasPrefix(endpoint, "unix:") {
34 return docker.NewClient(endpoint)
35 } else if tlsVerify || tlsEnabled(tlsCert, tlsCaCert, tlsKey) {
36 if tlsVerify {
37 if e, err := utils.PathExists(tlsCaCert); !e || err != nil {
38 return nil, errors.New("TLS verification was requested, but CA cert does not exist")
39 }
40 }
41
42 return docker.NewTLSClient(endpoint, tlsCert, tlsKey, tlsCaCert)
43 }
44 return docker.NewClient(endpoint)
45}
46
47func tlsEnabled(tlsCert, tlsCaCert, tlsKey string) bool {
48 for _, v := range []string{tlsCert, tlsCaCert, tlsKey} {

Callers 3

NewGeneratorFunction · 0.92
generateFromEventsMethod · 0.92
TestGenerateFromEventsFunction · 0.92

Calls 2

PathExistsFunction · 0.92
tlsEnabledFunction · 0.85

Tested by 1

TestGenerateFromEventsFunction · 0.74