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"]