Skip to content

Commit 2e0db18

Browse files
committed
refactor: optimize Dockerfile
1 parent 4a9121e commit 2e0db18

File tree

1 file changed

+8
-40
lines changed

1 file changed

+8
-40
lines changed

Dockerfile

Lines changed: 8 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,16 @@
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
82
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
363
RUN adduser --gecos "" --disabled-password --home /home/cfu --shell /bin/bash cfu
37-
384
COPY --chown=cfu --chmod=775 cf-deploy-kubernetes.sh /cf-deploy-kubernetes
395
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
427
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.
4614
RUN ln -s /usr/local/bin/kubectl1.34 /usr/local/bin/kubectl
4715

4816
WORKDIR /

0 commit comments

Comments
 (0)