|
1 | | -# ⚠️ If updating supported `kubectl` versions, |
2 | | -# please also update `./cf-deploy-kubernetes.sh` accordingly. |
3 | | - |
4 | | -ARG DEBIAN_VERSION=bookworm-20251103-slim |
5 | | - |
6 | | - |
7 | | -FROM debian:${DEBIAN_VERSION} AS builder |
| 1 | +FROM debian:bookworm-20251103-slim AS prod |
8 | 2 | ARG TARGETPLATFORM |
9 | | -RUN apt-get update && apt-get install -y build-essential |
10 | | - |
11 | | -ARG BUSYBOX_VERSION=1.36.1 |
12 | | -ADD https://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2 /busybox-${BUSYBOX_VERSION}.tar.bz2 |
13 | | -ADD https://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2.sha256 /busybox-${BUSYBOX_VERSION}.tar.bz2.sha256 |
14 | | -RUN echo "$(cat busybox-${BUSYBOX_VERSION}.tar.bz2.sha256) busybox-${BUSYBOX_VERSION}.tar.bz2" | sha256sum --check |
15 | | -RUN tar -xvjf busybox-${BUSYBOX_VERSION}.tar.bz2 \ |
16 | | - && cd busybox-${BUSYBOX_VERSION} \ |
17 | | - && make defconfig \ |
18 | | - && make \ |
19 | | - && make CONFIG_PREFIX="/" install |
20 | | - |
21 | | -ADD https://dl.k8s.io/release/v1.34.1/bin/${TARGETPLATFORM}/kubectl /kubectl/kubectl1.34 |
22 | | -ADD https://dl.k8s.io/release/v1.34.1/bin/${TARGETPLATFORM}/kubectl.sha256 /kubectl1.34.sha256 |
23 | | -RUN echo "$(cat kubectl1.34.sha256) /kubectl/kubectl1.34" | sha256sum --check |
24 | | - |
25 | | -ADD https://dl.k8s.io/release/v1.33.5/bin/${TARGETPLATFORM}/kubectl /kubectl/kubectl1.33 |
26 | | -ADD https://dl.k8s.io/release/v1.33.5/bin/${TARGETPLATFORM}/kubectl.sha256 /kubectl1.33.sha256 |
27 | | -RUN echo "$(cat kubectl1.33.sha256) /kubectl/kubectl1.33" | sha256sum --check |
28 | | - |
29 | | -ADD https://dl.k8s.io/release/v1.32.9/bin/${TARGETPLATFORM}/kubectl /kubectl/kubectl1.32 |
30 | | -ADD https://dl.k8s.io/release/v1.32.9/bin/${TARGETPLATFORM}/kubectl.sha256 /kubectl1.32.sha256 |
31 | | -RUN echo "$(cat kubectl1.32.sha256) /kubectl/kubectl1.32" | sha256sum --check |
32 | | - |
33 | | - |
34 | | - |
35 | | -FROM debian:${DEBIAN_VERSION} AS prod |
36 | 3 | RUN adduser --gecos "" --disabled-password --home /home/cfu --shell /bin/bash cfu |
37 | | - |
38 | 4 | COPY --chown=cfu --chmod=775 cf-deploy-kubernetes.sh /cf-deploy-kubernetes |
39 | 5 | COPY --chown=cfu --chmod=775 template.sh /template.sh |
40 | | - |
41 | | -COPY --chown=cfu --chmod=775 --from=builder /usr/bin/busybox /usr/bin/busybox |
| 6 | +COPY --from=busybox:1.36.1-musl /bin/busybox /usr/bin/busybox |
42 | 7 | RUN busybox --install |
43 | | - |
44 | | -COPY --chown=cfu --chmod=775 --from=builder /kubectl/* /usr/local/bin/ |
45 | | -# ⚠️ Defaults to the latest kubectl version. Please update with new versions as needed. |
| 8 | +# ⚠️ We support 3 most recent minor versions: https://kubernetes.io/releases/ |
| 9 | +# Please update `./cf-deploy-kubernetes.sh` accordingly. |
| 10 | +ADD --chown=cfu --chmod=775 https://dl.k8s.io/release/v1.34.1/bin/${TARGETPLATFORM}/kubectl /usr/local/bin/kubectl1.34 |
| 11 | +ADD --chown=cfu --chmod=775 https://dl.k8s.io/release/v1.33.5/bin/${TARGETPLATFORM}/kubectl /usr/local/bin/kubectl1.33 |
| 12 | +ADD --chown=cfu --chmod=775 https://dl.k8s.io/release/v1.32.9/bin/${TARGETPLATFORM}/kubectl /usr/local/bin/kubectl1.32 |
| 13 | +# ⚠️ Defaults to the latest version. Please update with new versions as needed. |
46 | 14 | RUN ln -s /usr/local/bin/kubectl1.34 /usr/local/bin/kubectl |
47 | 15 |
|
48 | 16 | WORKDIR / |
|
0 commit comments