From 09be3c1129fa2e58badcafd5df4b71f3f275a3ee Mon Sep 17 00:00:00 2001 From: Antonio Murdaca Date: Tue, 12 Apr 2016 17:21:20 +0200 Subject: [PATCH] Ignore invalid host header between go1.6 and old docker clients BenchmarkWithHack-4 50000 37082 ns/op 44.50 MB/s 1920 B/op 30 allocs/op BenchmarkNoHack-4 50000 30829 ns/op 53.52 MB/s 0 B/op 0 allocs/op Signed-off-by: Brian Goff Signed-off-by: Antonio Murdaca --- docs/reference/commandline/dockerd.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/reference/commandline/dockerd.md b/docs/reference/commandline/dockerd.md index c3caa10fcd..9238388880 100644 --- a/docs/reference/commandline/dockerd.md +++ b/docs/reference/commandline/dockerd.md @@ -849,6 +849,19 @@ set like this: export DOCKER_TMPDIR=/mnt/disk2/tmp /usr/local/bin/dockerd -D -g /var/lib/docker -H unix:// > /var/lib/docker-machine/docker.log 2>&1 +Docker clients <= 1.9.2 used an invalid Host header when making request to the +daemon. Docker 1.12 is built using golang 1.6 which is now checking the validity +of the Host header and as such clients <= 1.9.2 can't talk anymore to the daemon. +Docker supports overcoming this issue via a Docker daemon +environment variable. In case you are seeing this error when contacting the +daemon: + + Error response from daemon: 400 Bad Request: malformed Host header + +The `DOCKER_HTTP_HOST_COMPAT` can be set like this: + + DOCKER_HTTP_HOST_COMPAT=1 /usr/local/bin/dockerd ... + ## Default cgroup parent