
This is the 2nd attempt. The previous was reverted while we figured out the regional mirrors (oops). New plan: k8s.gcr.io is a read-only facade that auto-detects your source region (us, eu, or asia for now) and pulls from the closest. To publish an image, push k8s-staging.gcr.io and it will be synced to the regionals automatically (similar to today). For now the staging is an alias to gcr.io/google_containers (the legacy URL). When we move off of google-owned projects (working on it), then we just do a one-time sync, and change the google-internal config, and nobody outside should notice. We can, in parallel, change the auto-sync into a manual sync - send a PR to "promote" something from staging, and a bot activates it. Nice and visible, easy to keep track of.
36 lines
1.1 KiB
Markdown
36 lines
1.1 KiB
Markdown
### hyperkube
|
|
|
|
`hyperkube` is an all-in-one binary for the Kubernetes server components
|
|
`hyperkube` is built for multiple architectures and _the image is pushed automatically on every release._
|
|
|
|
#### How to release by hand
|
|
|
|
```console
|
|
# First, build the binaries
|
|
$ build/run.sh make cross
|
|
|
|
# Build for linux/amd64 (default)
|
|
# export REGISTRY=$HOST/$ORG to switch from staging-k8s.gcr.io
|
|
|
|
$ make push VERSION={target_version} ARCH=amd64
|
|
# ---> staging-k8s.gcr.io/hyperkube-amd64:VERSION
|
|
# ---> staging-k8s.gcr.io/hyperkube:VERSION (image with backwards-compatible naming)
|
|
|
|
$ make push VERSION={target_version} ARCH=arm
|
|
# ---> staging-k8s.gcr.io/hyperkube-arm:VERSION
|
|
|
|
$ make push VERSION={target_version} ARCH=arm64
|
|
# ---> staging-k8s.gcr.io/hyperkube-arm64:VERSION
|
|
|
|
$ make push VERSION={target_version} ARCH=ppc64le
|
|
# ---> staging-k8s.gcr.io/hyperkube-ppc64le:VERSION
|
|
|
|
$ make push VERSION={target_version} ARCH=s390x
|
|
# ---> staging-k8s.gcr.io/hyperkube-s390x:VERSION
|
|
```
|
|
|
|
If you don't want to push the images, run `make` or `make build` instead
|
|
|
|
|
|
[]()
|