From 9619a27f8c042d2f0c8987c9a57fa9c8a08a9a9b Mon Sep 17 00:00:00 2001 From: Paul Bellamy Date: Thu, 16 Jul 2015 13:57:00 +0100 Subject: [PATCH] [proxy] adding log message for ignored containers --- proxy/proxy.go | 15 ++++++++++++--- proxy/start_container_interceptor.go | 4 ++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/proxy/proxy.go b/proxy/proxy.go index 8964b074..2e29b844 100644 --- a/proxy/proxy.go +++ b/proxy/proxy.go @@ -116,9 +116,7 @@ func (proxy *Proxy) ListenAndServe() error { } func (proxy *Proxy) weaveCIDRsFromConfig(config *docker.Config, hostConfig *docker.HostConfig) ([]string, bool) { - if hostConfig != nil && - hostConfig.NetworkMode != "" && - hostConfig.NetworkMode != "bridge" { + if !validNetworkMode(hostConfig) { return nil, false } for _, e := range config.Env { @@ -131,3 +129,14 @@ func (proxy *Proxy) weaveCIDRsFromConfig(config *docker.Config, hostConfig *dock } return nil, !proxy.NoDefaultIPAM } + +func validNetworkMode(hostConfig *docker.HostConfig) bool { + return networkMode(hostConfig) == "bridge" +} + +func networkMode(hostConfig *docker.HostConfig) string { + if hostConfig == nil || hostConfig.NetworkMode == "" { + return "bridge" + } + return hostConfig.NetworkMode +} diff --git a/proxy/start_container_interceptor.go b/proxy/start_container_interceptor.go index ece4069f..b020fd34 100644 --- a/proxy/start_container_interceptor.go +++ b/proxy/start_container_interceptor.go @@ -21,6 +21,10 @@ func (i *startContainerInterceptor) InterceptResponse(r *http.Response) error { return err } + if !validNetworkMode(container.HostConfig) { + Debug.Printf("Ignoring container %s with --net=%s", container.ID, networkMode(container.HostConfig)) + return nil + } cidrs, ok := i.proxy.weaveCIDRsFromConfig(container.Config, container.HostConfig) if !ok { Debug.Print("No Weave CIDR, ignoring")