diff --git a/nameserver/updater.go b/nameserver/updater.go index 9d73090b..d94d52b3 100644 --- a/nameserver/updater.go +++ b/nameserver/updater.go @@ -4,16 +4,24 @@ import ( "github.com/fsouza/go-dockerclient" ) -func StartUpdater(apiPath string, zone Zone) error { - client, err := docker.NewClient(apiPath) +func checkError(err error, apiPath string) { if err != nil { Error.Fatalf("Unable to connect to Docker API on %s: %s", apiPath, err) } +} + +func StartUpdater(apiPath string, zone Zone) error { + client, err := docker.NewClient(apiPath) + checkError(err, apiPath) + + env, err := client.Version() + checkError(err, apiPath) events := make(chan *docker.APIEvents) - client.AddEventListener(events) + err = client.AddEventListener(events) + checkError(err, apiPath) - Info.Printf("Using Docker API on %s", apiPath) + Info.Printf("Using Docker API on %s: %v", apiPath, env) go func() { for event := range events { diff --git a/weave b/weave index f0d8e2fa..c50a1d6b 100755 --- a/weave +++ b/weave @@ -280,7 +280,7 @@ http_call() { fi port="$3" url="$4" - shift 3 + shift 4 if command_exists curl ; then curl -s -X $http_verb "$@" http://$DOCKERIP:$port$url else @@ -359,7 +359,7 @@ case "$COMMAND" in shift 1 check_not_running $DNS_CONTAINER_NAME $DNS_IMAGE create_bridge - CONTAINER=$(docker run -d --name=$DNS_CONTAINER_NAME -v /var/run/docker.sock:/var/run/docker.sock $DNS_IMAGE "$@") + CONTAINER=$(docker run --privileged -d --name=$DNS_CONTAINER_NAME -v /var/run/docker.sock:/var/run/docker.sock $DNS_IMAGE "$@" | tail -n 1) with_container_netns $CONTAINER attach $CIDR >/dev/null echo $CONTAINER ;;