github.com/tilt-dev/tilt@v0.36.0/.circleci/Dockerfile.integration (about) 1 # Uses Node 22 2 FROM cimg/go:1.24-node 3 4 USER root 5 6 # Install dependencies from OS package manager sources 7 RUN apt update && apt install -y --no-install-recommends \ 8 ca-certificates \ 9 jq \ 10 liblz4-tool \ 11 rsync \ 12 socat \ 13 && rm -rf /var/lib/apt/lists/* 14 15 # Install kubectl 16 RUN curl -sSL -o /usr/local/bin/kubectl "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" \ 17 && chmod +x /usr/local/bin/kubectl \ 18 && kubectl version --client 19 20 # Install docker 21 # Adapted from https://github.com/circleci/circleci-images/blob/staging/shared/images/Dockerfile-basic.template 22 # Che1ck https://download.docker.com/linux/static/stable/x86_64/ for latest versions 23 ENV DOCKER_VERSION=29.0.1 24 RUN set -exu \ 25 && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VERSION}.tgz" \ 26 && echo Docker URL: $DOCKER_URL \ 27 && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \ 28 && ls -lha /tmp/docker.tgz \ 29 && tar -xz -C /tmp -f /tmp/docker.tgz \ 30 && mv /tmp/docker/* /usr/bin \ 31 && rm -rf /tmp/docker /tmp/docker.tgz \ 32 && which docker \ 33 && (docker version || true) 34 35 # docker-compose v2 36 ARG DOCKER_COMPOSE_V2_VERSION=v2.40.3 37 RUN curl -fL "https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_V2_VERSION}/docker-compose-$(uname -s | tr '[A-Z]' '[a-z]')-$(uname -m)" -o /usr/local/bin/docker-compose \ 38 && chmod a+x /usr/local/bin/docker-compose \ 39 && docker-compose version 40 41 # install Kind (Kubernetes in Docker) 42 ENV KIND_VERSION=v0.30.0 43 RUN curl -fLo ./kind-linux-amd64 https://github.com/kubernetes-sigs/kind/releases/download/${KIND_VERSION}/kind-linux-amd64 \ 44 && chmod +x ./kind-linux-amd64 \ 45 && mv ./kind-linux-amd64 /usr/local/bin/kind \ 46 && kind version 47 48 # --- GO UTILITIES / LINTERS --- 49 USER circleci 50 51 # install gotestsum 52 RUN go install gotest.tools/gotestsum@latest \ 53 && gotestsum --version 54 55 # install ctlptl from the ctlptl release image 56 COPY --from=docker/tilt-ctlptl /usr/local/bin/ctlptl /usr/local/bin/