Skip to content

Commit 1458a4c

Browse files
committed
♻️ refactor(docker): improve Dockerfile layer efficiency
- separate package installation into distinct layers for better caching - update aws-iam-authenticator download URL to a specific version for consistency
1 parent 1652f15 commit 1458a4c

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

Dockerfile

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
FROM amazon/aws-cli:latest
22

3-
# Install required tools in one layer to reduce image size
3+
# Install system packages and jq first
44
RUN yum update -y && \
55
yum install -y coreutils && \
66
curl -sL -o /usr/bin/jq https://github.com/jqlang/jq/releases/download/jq-1.6/jq-linux64 && \
7-
chmod +x /usr/bin/jq && \
8-
curl -sL -o /usr/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && \
9-
curl -sL -o /usr/bin/aws-iam-authenticator $(curl -s https://api.github.com/repos/kubernetes-sigs/aws-iam-authenticator/releases/latest | jq -r '.assets[] | select(.name | contains("linux_amd64"))' | jq -r '.browser_download_url') && \
7+
chmod +x /usr/bin/jq
8+
9+
# Install kubectl and aws-iam-authenticator
10+
RUN curl -sL -o /usr/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && \
11+
curl -sL -o /usr/bin/aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.6.12/aws-iam-authenticator_0.6.12_linux_amd64 && \
1012
chmod +x /usr/bin/aws-iam-authenticator && \
1113
chmod +x /usr/bin/kubectl
1214

0 commit comments

Comments
 (0)