mirror of https://github.com/k3s-io/k3s
Use debian-base instead of busybox as base image for server images
parent
b6fd5d93b2
commit
f26048ecb1
17
build/BUILD
17
build/BUILD
|
@ -21,32 +21,23 @@ filegroup(
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
)
|
)
|
||||||
|
|
||||||
# ensure /etc/nsswitch.conf exists so go's resolver respects /etc/hosts
|
|
||||||
container_image(
|
|
||||||
name = "busybox-with-nsswitch",
|
|
||||||
base = "@official_busybox//image",
|
|
||||||
directory = "/etc",
|
|
||||||
files = ["nsswitch.conf"],
|
|
||||||
mode = "0644",
|
|
||||||
)
|
|
||||||
|
|
||||||
# This list should roughly match kube::build::get_docker_wrapped_binaries()
|
# This list should roughly match kube::build::get_docker_wrapped_binaries()
|
||||||
# in build/common.sh.
|
# in build/common.sh.
|
||||||
DOCKERIZED_BINARIES = {
|
DOCKERIZED_BINARIES = {
|
||||||
"cloud-controller-manager": {
|
"cloud-controller-manager": {
|
||||||
"base": ":busybox-with-nsswitch",
|
"base": "@debian-base-amd64//image",
|
||||||
"target": "//cmd/cloud-controller-manager:cloud-controller-manager",
|
"target": "//cmd/cloud-controller-manager:cloud-controller-manager",
|
||||||
},
|
},
|
||||||
"kube-apiserver": {
|
"kube-apiserver": {
|
||||||
"base": ":busybox-with-nsswitch",
|
"base": "@debian-base-amd64//image",
|
||||||
"target": "//cmd/kube-apiserver:kube-apiserver",
|
"target": "//cmd/kube-apiserver:kube-apiserver",
|
||||||
},
|
},
|
||||||
"kube-controller-manager": {
|
"kube-controller-manager": {
|
||||||
"base": ":busybox-with-nsswitch",
|
"base": "@debian-base-amd64//image",
|
||||||
"target": "//cmd/kube-controller-manager:kube-controller-manager",
|
"target": "//cmd/kube-controller-manager:kube-controller-manager",
|
||||||
},
|
},
|
||||||
"kube-scheduler": {
|
"kube-scheduler": {
|
||||||
"base": ":busybox-with-nsswitch",
|
"base": "@debian-base-amd64//image",
|
||||||
"target": "//cmd/kube-scheduler:kube-scheduler",
|
"target": "//cmd/kube-scheduler:kube-scheduler",
|
||||||
},
|
},
|
||||||
"kube-proxy": {
|
"kube-proxy": {
|
||||||
|
|
|
@ -88,51 +88,18 @@ readonly KUBE_CONTAINER_RSYNC_PORT=8730
|
||||||
#
|
#
|
||||||
# $1 - server architecture
|
# $1 - server architecture
|
||||||
kube::build::get_docker_wrapped_binaries() {
|
kube::build::get_docker_wrapped_binaries() {
|
||||||
debian_iptables_version=v11.0
|
local arch=$1
|
||||||
|
local debian_base_version=0.4.0
|
||||||
|
local debian_iptables_version=v11.0
|
||||||
### If you change any of these lists, please also update DOCKERIZED_BINARIES
|
### If you change any of these lists, please also update DOCKERIZED_BINARIES
|
||||||
### in build/BUILD. And kube::golang::server_image_targets
|
### in build/BUILD. And kube::golang::server_image_targets
|
||||||
case $1 in
|
local targets=(
|
||||||
"amd64")
|
cloud-controller-manager,"k8s.gcr.io/debian-base-${arch}:${debian_base_version}"
|
||||||
local targets=(
|
kube-apiserver,"k8s.gcr.io/debian-base-${arch}:${debian_base_version}"
|
||||||
cloud-controller-manager,busybox
|
kube-controller-manager,"k8s.gcr.io/debian-base-${arch}:${debian_base_version}"
|
||||||
kube-apiserver,busybox
|
kube-scheduler,"k8s.gcr.io/debian-base-${arch}:${debian_base_version}"
|
||||||
kube-controller-manager,busybox
|
kube-proxy,"k8s.gcr.io/debian-iptables-${arch}:${debian_iptables_version}"
|
||||||
kube-scheduler,busybox
|
)
|
||||||
kube-proxy,k8s.gcr.io/debian-iptables-amd64:${debian_iptables_version}
|
|
||||||
);;
|
|
||||||
"arm")
|
|
||||||
local targets=(
|
|
||||||
cloud-controller-manager,arm32v7/busybox
|
|
||||||
kube-apiserver,arm32v7/busybox
|
|
||||||
kube-controller-manager,arm32v7/busybox
|
|
||||||
kube-scheduler,arm32v7/busybox
|
|
||||||
kube-proxy,k8s.gcr.io/debian-iptables-arm:${debian_iptables_version}
|
|
||||||
);;
|
|
||||||
"arm64")
|
|
||||||
local targets=(
|
|
||||||
cloud-controller-manager,arm64v8/busybox
|
|
||||||
kube-apiserver,arm64v8/busybox
|
|
||||||
kube-controller-manager,arm64v8/busybox
|
|
||||||
kube-scheduler,arm64v8/busybox
|
|
||||||
kube-proxy,k8s.gcr.io/debian-iptables-arm64:${debian_iptables_version}
|
|
||||||
);;
|
|
||||||
"ppc64le")
|
|
||||||
local targets=(
|
|
||||||
cloud-controller-manager,ppc64le/busybox
|
|
||||||
kube-apiserver,ppc64le/busybox
|
|
||||||
kube-controller-manager,ppc64le/busybox
|
|
||||||
kube-scheduler,ppc64le/busybox
|
|
||||||
kube-proxy,k8s.gcr.io/debian-iptables-ppc64le:${debian_iptables_version}
|
|
||||||
);;
|
|
||||||
"s390x")
|
|
||||||
local targets=(
|
|
||||||
cloud-controller-manager,s390x/busybox
|
|
||||||
kube-apiserver,s390x/busybox
|
|
||||||
kube-controller-manager,s390x/busybox
|
|
||||||
kube-scheduler,s390x/busybox
|
|
||||||
kube-proxy,k8s.gcr.io/debian-iptables-s390x:${debian_iptables_version}
|
|
||||||
);;
|
|
||||||
esac
|
|
||||||
|
|
||||||
echo "${targets[@]}"
|
echo "${targets[@]}"
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,6 +65,14 @@ http_file(
|
||||||
urls = mirror("https://github.com/kubernetes-incubator/cri-tools/releases/download/v%s/crictl-v%s-linux-amd64.tar.gz" % (CRI_TOOLS_VERSION, CRI_TOOLS_VERSION)),
|
urls = mirror("https://github.com/kubernetes-incubator/cri-tools/releases/download/v%s/crictl-v%s-linux-amd64.tar.gz" % (CRI_TOOLS_VERSION, CRI_TOOLS_VERSION)),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
docker_pull(
|
||||||
|
name = "debian-base-amd64",
|
||||||
|
digest = "sha256:86176bc8ccdc4d8ea7fbf6ba4b57fcefc2cb61ff7413114630940474ff9bf751",
|
||||||
|
registry = "k8s.gcr.io",
|
||||||
|
repository = "debian-base-amd64",
|
||||||
|
tag = "0.4.0", # ignored, but kept here for documentation
|
||||||
|
)
|
||||||
|
|
||||||
docker_pull(
|
docker_pull(
|
||||||
name = "debian-iptables-amd64",
|
name = "debian-iptables-amd64",
|
||||||
digest = "sha256:d4ff8136b9037694a3165a7fff6a91e7fc828741b8ea1eda226d4d9ea5d23abb",
|
digest = "sha256:d4ff8136b9037694a3165a7fff6a91e7fc828741b8ea1eda226d4d9ea5d23abb",
|
||||||
|
|
Loading…
Reference in New Issue