I've got a GKE cluster that was create with a command something like
# gcloud container clusters create "cluster" --machine-type "n1-standard-1" --image-type=GCI --num-nodes "3" --network "default"
The resulting vm image os-release file is
BUILD_ID=8530.71.0
NAME="Google Container-VM Image"
GOOGLE_CRASH_ID=Lakitu
VERSION_ID=53
BUG_REPORT_URL=https://crbug.com/new
PRETTY_NAME="Google Container-VM Image"
VERSION=53
GOOGLE_METRICS_PRODUCT_ID=26
HOME_URL="https://cloud.google.com/compute/docs/containers/vm-image/"
ID=gci
GKE is configured with kubenet & a cbr0 bridge. Docker bridge networking is setup to use the docker0 bridge. Since the docker0 bridge does not exist any attempt by docker to use this network fails like:
# docker run --rm -i -t busybox sh
docker: Error response from daemon: failed to create endpoint pedantic_lalande on network bridge: adding interface vethdc5e518 to bridge docker0 failed: could not find bridge docker0: route ip+net: no such network interface.
Adding a --net=Host to the above run statement works fine. The primary problem is docker does not accept the --net parameter for builds. The relevant Docker
issue has been open for a year & a half, a
PR fix for 9 months.
My primary use case is running Docker builds on Jenkins slave pods which is a complete no go with the above configuration.
Wil