Skip to content

dockerd crashes (panics) when passing --link-local-ip to docker run. #28606

@tomdee

Description

@tomdee

I ran the following command
docker run -ti --rm --net=calico --link-local-ip 169.254.1.2 alpine /bin/sh

This was on a recent master build of docker.

Docker daemon gave me this:

panic: interface conversion: interface is []interface {}, not []string [recovered]
	panic: interface conversion: interface is []interface {}, not []string [recovered]
	panic: interface conversion: interface is []interface {}, not []string

goroutine 1726 [running]:
panic(0x1751680, 0xc420846940)
	/usr/local/go/src/runtime/panic.go:500 +0x1a1
encoding/json.(*decodeState).unmarshal.func1(0xc4217e96b8)
	/usr/local/go/src/encoding/json/decode.go:155 +0x11b
panic(0x1751680, 0xc420846940)
	/usr/local/go/src/runtime/panic.go:458 +0x243
encoding/json.(*decodeState).unmarshal.func1(0xc4217e8fd8)
	/usr/local/go/src/encoding/json/decode.go:155 +0x11b
panic(0x1751680, 0xc420846940)
	/usr/local/go/src/runtime/panic.go:458 +0x243
github.com/docker/docker/vendor/github.com/docker/libnetwork.(*endpointInterface).UnmarshalJSON(0xc4210de320, 0xc42097ab40, 0xa6, 0x12a, 0xc420b2fb00, 0x7fea20eae398)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/endpoint_info.go:117 +0x8b2
encoding/json.(*decodeState).object(0xc4217caff0, 0x161fce0, 0xc4217cec88, 0x16)
	/usr/local/go/src/encoding/json/decode.go:562 +0x1cb5
encoding/json.(*decodeState).value(0xc4217caff0, 0x161fce0, 0xc4217cec88, 0x16)
	/usr/local/go/src/encoding/json/decode.go:368 +0x2cc
encoding/json.(*decodeState).unmarshal(0xc4217caff0, 0x161fce0, 0xc4217cec88, 0x0, 0x0)
	/usr/local/go/src/encoding/json/decode.go:169 +0x1fa
encoding/json.Unmarshal(0xc42097ab40, 0xa6, 0x12a, 0x161fce0, 0xc4217cec88, 0x0, 0x0)
	/usr/local/go/src/encoding/json/decode.go:97 +0x102
github.com/docker/docker/vendor/github.com/docker/libnetwork.(*endpoint).UnmarshalJSON(0xc4217cec60, 0xc42009a780, 0x24c, 0x280, 0x0, 0x0)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/endpoint.go:120 +0x328
encoding/json.(*decodeState).object(0xc4217cae10, 0x193ad00, 0xc4217cec60, 0x16)
	/usr/local/go/src/encoding/json/decode.go:562 +0x1cb5
encoding/json.(*decodeState).value(0xc4217cae10, 0x193ad00, 0xc4217cec60, 0x16)
	/usr/local/go/src/encoding/json/decode.go:368 +0x2cc
encoding/json.(*decodeState).unmarshal(0xc4217cae10, 0x193ad00, 0xc4217cec60, 0x0, 0x0)
	/usr/local/go/src/encoding/json/decode.go:169 +0x1fa
encoding/json.Unmarshal(0xc42009a780, 0x24c, 0x280, 0x193ad00, 0xc4217cec60, 0xc4217cec60, 0xc42135f500)
	/usr/local/go/src/encoding/json/decode.go:97 +0x102
github.com/docker/docker/vendor/github.com/docker/libnetwork.(*endpoint).SetValue(0xc4217cec60, 0xc42009a780, 0x24c, 0x280, 0x1, 0x1)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/endpoint.go:362 +0x55
github.com/docker/docker/vendor/github.com/docker/libnetwork/datastore.(*datastore).List(0xc420014400, 0xc420832120, 0x5e, 0x24cdf20, 0xc4217ce000, 0x0, 0x0, 0x0, 0x0, 0x0)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/datastore/datastore.go:538 +0x23f
github.com/docker/docker/vendor/github.com/docker/libnetwork.(*network).getEndpointsFromStore(0xc42135f500, 0xc420879260, 0xc42147ac08, 0x1, 0x0, 0x0)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/store.go:202 +0x21c
github.com/docker/docker/vendor/github.com/docker/libnetwork.(*controller).networkWatchLoop(0xc42025ea50, 0xc4209dbd00, 0xc421074840, 0xc420879260)
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/store.go:291 +0x17c
created by github.com/docker/docker/vendor/github.com/docker/libnetwork.(*controller).processEndpointCreate
	/go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/store.go:403 +0x6ab

Metadata

Metadata

Assignees

Labels

area/networkingNetworkingpriority/P1Important: P1 issues are a top priority and a must-have for the next release.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions