1
0
Fork 0
myplayground/container/runner-Containerfile

44 lines
1.4 KiB
Plaintext

FROM debian:latest
ARG RUNNER_VERSION="2.313.0"
RUN apt-get update -y && apt-get upgrade -y && useradd -m user
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
curl jq build-essential libssl-dev libffi-dev python3 python3-venv python3-dev python3-pip wget git
RUN cd /home/user && mkdir actions-runner && cd actions-runner \
&& curl -O -L https://github.com/actions/runner/releases/download/v${RUNNER_VERSION}/actions-runner-linux-x64-${RUNNER_VERSION}.tar.gz \
&& tar xzf ./actions-runner-linux-x64-${RUNNER_VERSION}.tar.gz
RUN chown -R user ~user && /home/user/actions-runner/bin/installdependencies.sh
RUN cat << EOF > entrypoint.sh \
#!/bin/bash \
\
ORGANIZATION=$ORGANIZATION \
ACCESS_TOKEN=$ACCESS_TOKEN \
REG_TOKEN=$REG_TOKEN \
\
cd /home/user/actions-runner \
\
echo ./config.sh --url https://github.com/${ORGANIZATION} --token ${REG_TOKEN} \
./config.sh --url https://github.com/${ORGANIZATION} --token ${REG_TOKEN} \
\
cleanup() { \
echo "Removing runner..." \
./config.sh remove --unattended --token ${REG_TOKEN} \
} \
\
trap 'cleanup; exit 130' INT \
trap 'cleanup; exit 143' TERM \
\
./run.sh & wait $! \
EOF
RUN chmod +x entrypoint.sh
USER user
ENTRYPOINT ["./entrypoint.sh"]