How to Check What Tools a Runner Image Preinstalls
GitHub-hosted images ship with dozens of preinstalled tools (Node, Python, Docker, common CLIs), so choosing the right image can remove setup steps entirely.
Knowing what an image already contains lets you drop redundant install steps and pick an image whose defaults match your stack. The exact list is published per image and changes over time.
Inspect the running image
.github/workflows/ci.yml
- run: |
cat /etc/os-release
node --version && python3 --version && docker --version
ls /opt/hostedtoolcache # cached toolchain versionsUse the published manifest
GitHub maintains a per-image software manifest in its actions/runner-images repository. Check it to see exact preinstalled versions before adding a setup-* step; often the version you need is already present in the tool cache.
Skip redundant setup
.github/workflows/ci.yml
# setup-node with a version already in the image just selects it, no download
- uses: actions/setup-node@v4
with:
node-version: '20' # served from /opt/hostedtoolcache if presentRelated guides
How to Choose Between ubuntu-latest and a Pinned Runner ImageWeigh the convenience of ubuntu-latest against the reproducibility of a pinned image like ubuntu-24.04, and p…
How to Decide When a Custom Runner Image Is Worth ItJudge when baking a custom runner image beats installing tools per job, trading longer image maintenance for…