Docker image pro self-hosted github runnery. Kód převzat a upravit odtud.
- Před samotným spuštěním je potřeba získat
ACCESS_TOKEN
, který umožní se přihlásit přes API na Github a tím vytvořit registrační token, kterým se následně přidá do repozitáře samotný runner. Tento token potřebuje mít read & write administration role, aby se dostal k /actions/runners/registration-token - Zkopírujte
env.env.sample
doenv.env
a doplňte jméno repozitáře, ke kterému se runner připojí (ve formátu<organizace>/<repo>
, např.fykosak/fksdb
). - Spusťte build přes
docker compose build
. - Spusťte runner přes
docker compose up
. Runner se automaticky spustí, zaregistruje se na github a připojí runnera do repozitáře.
Každý runner může najednou zpracovávat pouze jeden task. Proto pokud chceme
spouštět více úkolů paralelně, je potřeba vytvořit více runnerů. Kolik runnerů
poběží lze nastavit přímo v docker-compose.yml
přes sekci deploy
,
ve které je možné nastavit, kolik replikovaných kontejnerů poběží, případně
jim lze nastavit limity na použité prostředky serveru.
Pokud je v úmyslu self-hosted runnera použít, je potřeba změnit v daném
workflow runs-on
na selfhosted
, případně je možné použít různé labels.