# Образ kind-k8s-tools: kind, kubectl, docker CLI, Python-скрипты (без установки на хост). # Данные кластеров монтируются в /work/clusters (см. docker-compose.yml). # # Автор: Сергей Антропов — https://devops.org.ru ARG KIND_VERSION=0.24.0 # Платформа целевого образа (BuildKit подставляет amd64/arm64; иначе — uname внутри слоя) ARG TARGETARCH FROM alpine:3.20 RUN apk add --no-cache python3 docker-cli curl bash ca-certificates \ && ARCH="${TARGETARCH:-}" \ && if [ -z "$ARCH" ]; then ARCH="$(uname -m)"; fi \ && case "$ARCH" in \ amd64|x86_64) KARCH=amd64 ;; \ arm64|aarch64) KARCH=arm64 ;; \ *) echo "Неподдерживаемая архитектура: $ARCH"; exit 1 ;; \ esac \ && curl -sSLo /usr/local/bin/kind "https://kind.sigs.k8s.io/dl/v${KIND_VERSION}/kind-linux-${KARCH}" \ && chmod +x /usr/local/bin/kind \ && KVER=$(curl -Ls https://dl.k8s.io/release/stable.txt) \ && curl -sSLo /usr/local/bin/kubectl "https://dl.k8s.io/release/${KVER}/bin/linux/${KARCH}/kubectl" \ && chmod +x /usr/local/bin/kubectl COPY app/ /opt/kind-k8s/app/ ENV KIND_K8S_WORKDIR=/work \ PYTHONPATH=/opt/kind-k8s/app \ KIND_K8S_IN_CONTAINER=1 \ PATH=/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin WORKDIR /work