Files
gitea/act-runners/kubectl/Dockerfile
T
Márcio Fernandes 84a516c5b6
act-fatboy.yml / build-container-image (push) Successful in 18s
act-runner-fatboy-deploy.yml / build-container-image (push) Successful in 16s
act-runner-kubectl.yml / build-container-image (push) Successful in 17s
modified: act-runners/kubectl/Dockerfile
2026-09-04 00:28:28 +01:00

56 lines
1.8 KiB
Docker

ARG ACT_RUNNER_VERSION=3.0.2
# STAGE 1 — BUILDER
FROM alpine:3.20 AS builder
ARG ACT_RUNNER_VERSION
RUN apk add --no-cache curl unzip bash
# Kubectl
RUN curl -Lo /tmp/kubectl \
"https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" \
&& chmod +x /tmp/kubectl
ARG ACT_RUNNER_VERSION
# ACT Runner
RUN curl -sSLO "https://dl.gitea.com/gitea-runner/${ACT_RUNNER_VERSION}/gitea-runner-${ACT_RUNNER_VERSION}-linux-amd64" \
&& curl -sSLO "https://dl.gitea.com/gitea-runner/${ACT_RUNNER_VERSION}/gitea-runner-${ACT_RUNNER_VERSION}-linux-amd64.sha256" \
&& sed -i '/found/d' "gitea-runner-${ACT_RUNNER_VERSION}-linux-amd64.sha256" \
&& sha256sum -c "gitea-runner-${ACT_RUNNER_VERSION}-linux-amd64.sha256" \
&& install -m 0755 "gitea-runner-${ACT_RUNNER_VERSION}-linux-amd64" /tmp/gitea-runner
# --------------------------------------------------------------------
# STAGE 2 — FINAL IMAGE
# --------------------------------------------------------------------
FROM alpine:3.20
COPY --from=builder /tmp/kubectl /usr/local/bin/kubectl
COPY --from=builder /tmp/gitea-runner /usr/local/bin/act_runner
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
RUN addgroup -g 1000 runner \
&& adduser -D -u 1000 -G runner -s /bin/bash runner \
&& mkdir -p /home/runner \
&& chown -R runner:runner /home/runner
RUN mkdir /etc/act_runner \
&& chown -R runner:runner /etc/act_runner
ENV GITEA_RUNNER_NAME="kubectl-mini" \
GITEA_RUNNER_CONFIG_FILE="/etc/act_runner/config.yaml" \
GITEA_RUNNER_EXEC_WORKDIR="/home/runner/workspace" \
GITEA_RUNNER_EPHEMERAL="1"\
GITEA_RUNNER_LABELS="linux,alpine,kubectl"
USER runner
RUN mkdir /home/runner/workspace && mkdir /home/runner/data
WORKDIR /home/runner
ENTRYPOINT ["/entrypoint.sh"]