# Tinqs CI Runner Base Image # Pre-installed: Go, Node.js, AWS CLI, Docker CLI, git, ssh, curl # Used by act_runner with runs-on: host (no per-job install overhead) FROM docker:29-dind ARG GO_VERSION=1.26.2 ARG NODE_VERSION=22 # System packages RUN apk add --no-cache \ bash git curl wget unzip tar \ ca-certificates openssh-client \ build-base python3 \ s6 tzdata # Go RUN curl -fsSL "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz" | tar -C /usr/local -xz ENV PATH="/usr/local/go/bin:${PATH}" ENV GOPATH="/go" ENV PATH="${GOPATH}/bin:${PATH}" # Node.js + pnpm RUN apk add --no-cache nodejs npm && \ npm install -g pnpm # AWS CLI RUN curl -fsSL https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip -o /tmp/awscli.zip && \ unzip -q /tmp/awscli.zip -d /tmp && \ /tmp/aws/install && \ rm -rf /tmp/awscli.zip /tmp/aws # Verify RUN go version && node --version && pnpm --version && aws --version && docker --version && git --version WORKDIR /workspace