Now there is an Alpine 3.5 variant of the Go 1.7 images, use this.
fix#972
Note updated the containers/binfmt image as this will be converted
to go-compile shortly, at which point alpine-build-go can be removed.
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
Go code is really fast to compile so we do not really need to use the
cache features of `docker build`. So make a compile container instead.
This can also output a build context and Dockerfile if you want to do
a build.
For reference, an uncached `docker build` of our Go code takes about
7s, a cached one 1.2s, and this takes 1.7s, so the best case is a little
worse, but we save a lot of images, and the worst case is better.
This is mainly designed to make the nested builds for containerd
containers simpler too. Will add a variant for the C code as well.
Also add `-static` to the flags so we always make static executables,
which was omitted previously.
Signed-off-by: Justin Cormack <justin.cormack@docker.com>